关联知识

  • Matplotlib
  • Python

Matplotlib创建的报告和仪表板可以以不同的方式使用。 它们可以在上游Web应用程序中使用,也可以以PDF文件的形式分发,还可以嵌入到GUI工具箱中或在线交互式地使用。

在此,我们将学习如何以各种格式保存报告,以便可以将它们分发给使用者以直接使用(如PDF格式),也可以嵌入到其他应用程序(例如GUI工具箱)中。

不同格式保存图形

Matplotlib支持PNG,SVG,SVGZ,PDF,PS和EPS格式以保存图形。 我们需要在计算机上拥有各自的阅读器,才能查看这些输出格式。 在本文中,我们将学习如何以所有这些格式保存直方图。

导入所需库:

import matplotlib.pyplot as pltimport numpy as np

以下代码块绘制直方图并将其保存为Matplotlib支持的所有格式:

  • 设置可重复性的种子,并使用大小定义图形:
np.random.seed(19681211)plt.figure(figsize=(6,4))
  • 定义直方图的数据,对其进行绘制,然后将ylabel设置为直方图:
nd = np.random.normal(25, 5, 10000)plt.hist(nd)plt.ylabel('histogram')
  • 创建所有受支持的文件扩展名的列表:
file_ext = ['png', 'pdf', 'svg', 'svgz','eps','ps']
  • 使用for循环将图形保存为以下每种文件格式,然后在屏幕上显示图形:
for extension in file_ext: print('saving Histogram.%s ' % (extension)) plt.savefig('Histogram.%s' % (extension), dpi=300)plt.show()

分解代码

  • plt.hist(nd) 使用随机生成的nd数据绘制直方图。
  • plt.ylabel('histogram')将y轴标记为直方图。
  • file_ext是所有支持的文件格式的列表。
  • for循环显示所有格式保存的格式。
  • plt.savefig()用名称Histogram.file_ext保存图形,例如Histogram.png,Histogram.pdf等。
  • plt.savefig()与在屏幕上显示图形的plt.show()类似,而plt.savefig()将图形以指定格式发送到工作目录。

您可以在同一个会话中使用这两种方法,就像我们在此处所做的那样,以便它将指定格式的文件保存到工作目录中,并在屏幕上显示该文件。

您可以打开保存在工作目录中的文件并查看保存的图形的外观时,我们已裁剪了PDF,SVG和PNG格式的图像,并在此处显示以供参考。 打开并查看相应的文件时,应该看到以下屏幕截图:

请注意,标题不属于所保存的数字; 它们已添加到图像上,以显示哪个图像属于哪种输出格式。

图略

保存图形时避免截断

保存部分图形

详情参阅


透视Matplotlib核心功能和工具包 - 不同图形格式


svg批量转png python_svg批量转png python