将图表保存到文件

利用plt.savefig可以将当前图表保存到文件。该方法相当于Figure对象的实例方法 savefig。要将图表保存为SVG文件
输入

plt.savefig('figpath.svg')

=====================================
文件类型是通过文件扩展名推断出来的。使用的是.pdf,就会得到一 个PDF文件。发布图片时最常用到两个重要的选项是dpi(控制“每英寸点数”分 辨率)和bbox_inches(可以剪除当前图表周围的空白部分)。要得到一张带有最小白边且分辨率为400DPI的PNG图片

plt.savefig('figpath.png', dpi=400, bbox_inches='tight')

=====================================
savefig并非一定要写入磁盘,也可以写入任何文件型的对象

from io import BytesIO 
buffer = BytesIO() 
plt.savefig(buffer) 
plot_data = buffer.getvalue()

matplotlib配置

了解全部的自定义选项,请查阅matplotlib的配置文件matplotlibrc位于 matplotlib/mpl-data目录中如果对该文件进行了自定义,并将其放在你自己的.matplotlibrc目录中,则每次使用matplotlib时就会加载该文

=====================================
matplotlib自带一些配色方案,以及为生成出版质量的图片而设定的默认配置信息。 幸运的是,几乎所有默认行为都能通过一组全局参数进行自定义,它们可以管理图 像大小、subplot边距、配色方案、字体大小、网格类型等。

=====================================
一种Python编程方式配 置系统的方法是使用rc方法。
全局的图像默认大小设置为10×10,你可以执行

plt.rc('figure', figsize=(10, 10))

=====================================
rc的第一个参数是希望自定义的对象, 如’figure’、‘axes’、‘xtick’、‘ytick’、‘grid’、'legend’等。其后可以跟上一系列的关键字参数。一个简单的办法是将这些选项写成一个字典。

font_options = {'family' : 'monospace', 'weight' : 'bold', 'size' : 'small'} 
plt.rc('font', **font_options)

pandas和seaborn绘图

matplotlib实际上是一种比较低级的工具。要绘制一张图表,你组装一些基本组件就 行:数据展示、 图例、标题、刻度标签以及其他注解型信息。

=====================================
在pandas中,我们有多列数据,还有行和列标签。pandas自身就有内置的方法, 用于简化从DataFrame和Series绘制图形。另一个库 seaborn,由Michael Waskom创建的静态图形库。 Seaborn简化了许多常见可视类型的创建。

=====================================
引入seaborn会修改matplotlib默认的颜色方案和绘图类型,以提高可读性和美观度。即使你不使用seaborn API,你可能也会引入seaborn,作为提高 美观度和绘制常见matplotlib图形的简化方法。

线型图

Series和DataFrame都有一个用于生成各类图表的plot方法。默认情况下,它们所生成的是线型图

python matplotlib 保存 matplotlib savefig_自定义


python matplotlib 保存 matplotlib savefig_matplotlib_02


该Series对象的索引会被传给matplotlib,并用以绘制X轴。可以通过 use_index=False禁用该功能。X轴的刻度和界限可以通过xticks和xlim选项进行调节,Y轴就用yticks和ylim。

=====================================
pandas的大部分绘图方法都有一个可选的ax参数,它可以是一个matplotlib的 subplot对象。这使你能够在网格布局中更为灵活地处理subplot的位置。

=====================================

DataFrame的plot方法会在一个subplot中为各列绘制一条线,并自动创建图例

python matplotlib 保存 matplotlib savefig_图例_03


python matplotlib 保存 matplotlib savefig_图例_04


plot的其他关键字参数会被传给相应的matplotlib绘图函数,所以要更深 入地自定义图表,就必须学习更多有关matplotlib API的知识。

++++++++++++++++++++++++++++++++++++