matplotlib-pyplot
常态plt不支持中文
plt.rcParams[‘font.sans-serif’]=[‘SimHei’] //支持中文
plt.rcParams[‘axes.unicode_minus’]=False //解决负号显示问题
无子图
plt.figure(figsize=(W,H)) //创建一张宽W高H英寸的画布,无子图,figure是图表figsize是图尺寸,不写时默认创建一个figure
plt.figure(
figsize=(6.4,4.8),
dpi=100,
facecolor=’white’
) //默认参数
plt.xlabel(“”) //X轴名称
plt.ylabel(“”) //Y轴名称
plt.title(“”) //标题
有子图
fig,axes=plt.subplots(1,3,figsize=(W,H)) //创造一张宽W高H英寸的画布,有子图,子图区域为1行3列共1x3个子图。fig整张画布对象,axes子图对象
axes[0].set_xlabel(“”)
axes[0].set_ylabel(“”)
axes[0].set_title(“”)
plt.plot(x,y,marker=’o’,label=’label_name’) //默认折线图蓝色实线。marker指定数据点的形状(o是圆点,.是小点,s是方块square,x是叉号),label为该折线名字用于图例名称显示
plt.show() //显示图表,单图情况下使用多个show(),后面的图会覆盖前面的图
即使存在多个figure,全局状态机依旧会默认画在最后一个figure,需要显式切换来画在不同图上
plt.figure()
…
plt.imshow()
plt.legend() //显示图例
plt.grid(True) //显示网格
plt.tight_layout() //自动调整布局
plt.savafig() //保存已绘制的图片
plt.bar([‘Urban’,’Rural’],[urban_2015,rural_2015]) //柱状图
axes[2].pie(
[1000, 2321], //每个扇区的数值
labels=[‘name1’, ‘name2’], //扇区名字
autopct=’%1.1f%%’, //饼图各区域显示的数据。格式化字符串,显示百分比,%1.1f意思是以浮点数显示并保留1位小数。%属于特殊字符,末尾写%%才能输出一个%字符
startangle=90 //起始角度,让图从垂直方向开始更美观
) //饼图
plt.grid(axis=’y’,linestyle=’–’,alpha=0.6) //添加axis方向的网格线,样式为虚线(‘-‘实线,’–’虚线,’:’点线),透明度alpha(0完全透明–1完全不透明)
