我想准确地获得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.plot()
之前需要先调用 plt.figure(figsize=(3,4))
。 - hzitoun在创建图形之前添加以下内容即可更改绘图的大小。
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
以英寸为单位。对我来说,这是最实用的方式。