我想获得完全由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()
任何帮助?
答案 0 :(得分:64)
如果使用
显式创建图形,则可以设置图形大小plt.figure(figsize=(3,4))
要更改已保存图形的格式,只需更改文件名中的扩展名即可。但是我不知道matplotlib后端是否支持tiff
答案 1 :(得分:35)
您可以通过添加此
来更改图表的大小plt.rcParams["figure.figsize"] = [16,9]
答案 2 :(得分:17)
第一部分(明确设置输出大小)并不太难:
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 backend能够做到这一点。
一种选择是使用像imagemagick的convert
这样的工具转换输出。
(另一种选择是在这里等待,直到real matplotlib expert出现并证明我错了; - )
答案 3 :(得分:5)
如果创建后需要更改图形大小 ,请使用方法
fig = plt.figure()
fig.set_figheight(value_height)
fig.set_figwidth(value_width)
其中value_height
和value_width
以英寸为单位。对我来说,这是最实用的方法。