matplotlib 使用记录
1.保存图片时设置 pad_inches 去掉周围空白部分
在保持图片时,设置 bbox_inches 为 tight
plt.savefig(figpath.pdf', dpi=400, bbox_inches='tight')
可以去掉图片周围的空白部分。这一命令广为人知
但若是在插图到论文,想要进一步放大图片,以便更清晰,还可以进一步使得图片的空白部分更少:
plt.savefig(figpath.pdf', dpi=400, bbox_inches='tight', pad_inches=0.01)
这里 pad_inches 相当于在图片元素四周 pad 的空白像素的大小(单位是 inch)
参考 matplotlib 官方教程
2.调整 legend 出现的顺序以协调先前图片或者颜色设置(参见此博客)
handles, labels = ax[2].get_legend_handles_labels()
ax[2].legend(handles[::-1], labels[::-1], loc='upper right')
3. 至今还没弄明白到底如何控制 matplotlib 画出的图片的大小
figsize=[6.4*3*0.6, 6.4*0.6*0.8]
似乎只能控制 画布的大小,而 title、xlabel、ylabel 等的字号的大小的改变也会影响到最终所保存的图片的大小。
fig.subplots_adjust(wspace=0.1, hspace=0.3)
plt.savefig('./mean_loss_vs_one_epoch.pdf', dpi=400, bbox_inches='tight', pad_inches=0.01)
这些命令也会影响
4. Matplotlib 设置带有纹理的柱状图 hatch
5. Matplotlib 设置绘图风格
- Python matplotlib绘图 自己的科研风z
- 浅谈在matplotlib中更改plt.plot()的绘图风格
- matplotlib教程之——自定义配置文件和绘图风格
- 组合使用风格
- 设置 plt.style.use('ggplot')后,恢复到最初所用的风格(matplotlib 2.0之后的默认风格): plt.style.use('default') 参见 What is the name of the default style for matplotlib 2.0.0?
- 一般来说, classic 风格是 matplotlib 1.0 的版本,很难看
6. Matplotlib 设置中文论文中常用的黑白柱状图
python matplotlib 画黑白的柱状图(论文专用)
8. 设置为 ggplot 后,图片仍保存 为 pdf, 显示错误,
1.找不到字体,
2.没有模块 backends.backend_pdf
3. 索性直接报 bug, spyder 直接炸掉了,
4. 居然 anaconda 没了,/home/xxx/anaconda3 居然全部都没了,太奇怪了
5. 重新安装 anaconda3 后,一切问题都好了,也可以保存为 pdf 的了。
9. 使用 ggplot 和 seaborn-paper 格式的区别似乎是颜色稍微有一点不一样,
ggplot 对坐标轴刻度会增加一条白线,如果刻度很多的话,白线就会很密集
保存为 pdf 和 png 格式似乎会有一点不同
10 matplotlib 使用 latex 公式,
- 需要用 r'\((x,\tilde{y})\)' , 用 r 表示 raw 原生字符,不转义,否则 \t 会被转义从而出错
- 用 matplotlib.rcParames['text.usetex'] = True 来设置公式字符为斜体 按照此博客