#Matplotlib绘图
import matplotlib.pyplot as plt
plt.figure(figsize=(3,2),facecolor="green")
plt.plot() #绘制空白图形
plt.show() #显示绘图
4.参数设置
#绘图参数
import matplotlib.pyplot as plt
plt.rcParams["font.family"]="SimHei" #设置中文字体:中文黑体,宋体是SimSun,恢复默认是plt.rcdefaults()
fig=plt.figure(facecolor="lightgrey") #画布颜色为亮灰色
plt.subplot(2,2,1) #h划分子图,subplot(行数,列数,子图序列)
plt.title('子标题1')
plt.subplot(2,2,2)
plt.title('子标题2',loc="left",color="b") #标题位置靠左
plt.subplot(2,2,3)
myfontdict={"fontsize":12,"color":"g","rotation":30} #标题旋转30°
plt.title('子标题3',fontdict=myfontdict) #设置参数字典
plt.subplot(2,2,4)
plt.title('子标题4',color='white',backgroundcolor="black")
plt.suptitle("全局标题",fontsize=20,color="red",backgroundcolor="yellow") #全局标题
plt.tight_layout(rect=[0,0,1,0.9]) #自动调整子图,消除子图之间的重叠,子图向下挪了一点,给全局标题留点位置
#tight_layout(rect=[left,bottom,right,top])
plt.show()
#散点图
import matplotlib.pyplot as plt #导入绘图库
import numpy as np #导入numpy库
plt.rcParams["font.family"]="SimHei" #设置中文字体:中文黑体
plt.rcParams['axes.unicode_minus']=False #正常显示负号
#标准正态分布
n=1024 #随机点个数:1024
x1=np.random.normal(0,1,n) #生成数据点x坐标
y1=np.random.normal(0,1,n) #生成数据点y坐标
x2=np.random.uniform(-4,4,(1,n))
y2=np.random.uniform(-4,4,(1,n))
#绘制散点图
plt.scatter(x1,y1,color="blue",marker='*',label="正态分布")
plt.scatter(x2,y2,color="yellow",marker='o',label="均匀分布")
plt.legend() #显示图例
#设置标题
plt.title("标准正态分布",fontsize=20)
#设置文本
plt.text(2.5,2.5,"均 值:0\n标准差:1")
#设置坐标范围
plt.xlim(-4,4)
plt.ylim(-4,4)
#设置坐标轴标签
plt.xlabel('横坐标',fontsize=14)
plt.ylabel('纵坐标',fontsize=14)
plt.show()
#折线图
import matplotlib.pyplot as plt #导入绘图库
import numpy as np #导入numpy库
plt.rcParams["font.family"]="SimHei" #设置中文字体:中文黑体
n=24
y1=np.random.randint(27,37,n)
y2=np.random.randint(40,60,n)
#plot(x,y,color,marker,label,linewidth,markersize)
plt.plot(y1,label='温度')
plt.plot(y2,label='湿度')
plt.xlim(0,23)
plt.ylim(20,70)
plt.xlabel('小时',fontsize=12)
plt.ylabel('测量值',fontsize=12)
plt.title('24小时温度湿度统计',fontsize=16)
plt.legend()
plt.show()
#柱形图
import matplotlib.pyplot as plt #导入绘图库
import numpy as np #导入numpy库
plt.rcParams["font.family"]="SimHei" #设置中文字体:中文黑体
plt.rcParams['axes.unicode_minus']=False #正常显示负号
#条纹高度
y1=[32,25,16,30,24,45,40,33,28,17,24,20]
y2=[-23,-35,-26,-35,-45,-43,-35,-32,-23,-17,-22,-28]
#条纹left坐标,条纹的宽度0.8,每隔1cm开始画一个条纹
plt.bar(range(len(y1)),y1,width=0.8,facecolor='green',edgecolor='white',label='统计量1')#自动生成left坐标序列
plt.bar(range(len(y2)),y2,width=0.8,facecolor='red',edgecolor='white',label='统计量2')
#bar(left,height,width,facecolor,edgecolor,label)
plt.title("柱状图",fontsize=20)
plt.legend()
plt.show()
Matplotlib官网:Matplotlib — Visualization with Python
Matplotlib — Visualization with Python/genindex.html
Matplotlib — Visualization with Python/gallery.html