一些零碎的mathplotlib小技巧
一些零碎的 mathplotlib 小技巧
说明
一些零碎的 mathplotlib 小技巧怎么让图显得更高级 1. 改字体大小:标题,子标题,标注分别不用同大小的字体,一遍文章中所有图都有相同的 style。 2. 注意子图的间距 3. 注意对齐方向:居中,居左 4. 注意配色:不使用红绿蓝等纯色 5. 柱图,线图,饼图使用至少两种以上 6. 对一组图使用相同的 X,Y 轴范围 7. 注意线的粗细,点的大小
线的粗细点的大小
plt.plot(xx, linewidth=1.0)
plt.plot(xx, 'o', markersize=1)横轴显示时间日期
df['datetime'] = df['datestr'].apply(lambda x: datetime.datetime.strptime(x, "%Y-%m-%d"))字体大小
figure.suptitle('xxxx', fontsize=15)
plt.tick_params(labelsize=6)显示高分辨率
figure = plt.figure(figsize=(8,6), dpi=300)
其中 8,6 设定的图像大小及其长宽比保存高分辨图片
foo_fig = plt.gcf()
foo_fig.savefig("tmp1.png", format='png', dpi=300)
这里选择的是 png 图,因为其它图片格式都比较小众饼图
values = [100, 200]
labels = ['lab1', 'lab1']
colors = ['#9999ff', '#ff9999']
explode = [0, 0.1] # 哪个突出显示,突出多少
plt.pie(values, labels = labels, colors=colors, explode=explode, shadow=True, autopct='%1.1f%%') # 好看的饼图加阴影
plt.show()Subplot 布局
plt.subplot(121) # 前面的 1 是行数,2 就列数,后面的 1 是画在第一个位置上
plt.subplot(212) # 前面的 2 是行数,1 是列数,后面的 2 是在第二行上画
plt.subplot(224) # 前面的 2 是行数,中间的 2 是列数,后面的 4 是在第四个位置上画(右下角) 当然还有一些比较复杂的,不过一般也用不上设定显示范围
plt.xlim(min, max)
plt.ylim(min, max)总标题与子标题
主标题 figure.suptitle()
子标题 plt.title()间距
plt.subplots_adjust(left=0.1, bottom=0.1, right=0.9, top=0.8, hspace=0.3, wspace=0.3)
注意用 0-1 间的小数指定百分比参考 1. python 中 matplotlib 的颜色及线条控制
https://www.cnblogs.com/darkknightzh/p/6117528.html
主中指定的很多色板及对应颜色名,其实我还是觉得最方便的是找一个满意的配色方案,然后用 photoshop 采到它的颜色值,直接往 color 里填效果最好。