我想获得 4 x 3 英寸大小的 fig1,并以 tiff 格式更正以下程序:
import matplotlib.pyplot as plt
list1 = [3,4,5,6,9,12]
list2 = [8,12,14,15,17,20]
plt.plot(list1, list2)
plt.savefig('fig1.png', dpi = 300)
plt.close()
我想获得 4 x 3 英寸大小的 fig1,并以 tiff 格式更正以下程序:
import matplotlib.pyplot as plt
list1 = [3,4,5,6,9,12]
list2 = [8,12,14,15,17,20]
plt.plot(list1, list2)
plt.savefig('fig1.png', dpi = 300)
plt.close()
如果显式创建图形,则可以设置图形大小
plt.figure(figsize=(3,4))
您需要在调用之前设置图形大小plt.plot()
要更改保存图形的格式,只需更改文件名中的扩展名。但是,我不知道任何 matplotlib 后端是否支持 tiff
您可以通过在创建图形之前添加它来更改绘图的大小。
plt.rcParams["figure.figsize"] = [16,9]
第一部分(明确设置输出大小)并不难:
import matplotlib.pyplot as plt
list1 = [3,4,5,6,9,12]
list2 = [8,12,14,15,17,20]
fig = plt.figure(figsize=(4,3))
ax = fig.add_subplot(111)
ax.plot(list1, list2)
fig.savefig('fig1.png', dpi = 300)
fig.close()
但是在对 matplotlib + tiff 进行快速谷歌搜索之后,我不相信 matplotlib 可以制作tiff
情节。有人提到GDK 后端能够做到这一点。
一种选择是使用 imagemagick 之类的工具转换输出convert
。
(另一种选择是在这里等到真正的 matplotlib 专家出现并证明我错了 ;-)
如果您需要在创建后更改图形大小,请使用方法
fig = plt.figure()
fig.set_figheight(value_height)
fig.set_figwidth(value_width)
在哪里value_height
和value_width
在英寸。对我来说这是最实用的方法。