如何指定matplotlib输出图片的尺寸?

[图片] 如图,数据下面是数据的编号(我是排序过的)。数据很多的时候根本看不清。 于是只能手动zoom: [图片] zoom之后下面的编号就看清了。 …
关注者
61
被浏览
456,671

7 个回答

分享 7种 修改Matplotlib默认图形大小的方法:

方法一,dpi设置

plt.figure(dpi=150)

方法二,figsize设置

plt.figure(figsize=(6, 8))#6,8分别对应宽和高

方法三,set_size_inches设置

plt.figure().set_size_inches(6,8)#6,8分别对应宽和高

方法四,rcParams设置

plt.rcParams['figure.figsize'] = (6,8) #6,8分别对应宽和高

rcParams详细使用,可见 matplotlib-rcParams及绘图风格(style)设置详解


方法五,主题设置

plt.style.use(stylexxx)

目前可用的有 26种主题 ,每种主题对应自己的图片大小尺寸

['Solarize_Light2', '_classic_test_patch', 'bmh', 'classic', 'dark_background', 'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10']

每类主题效果 Python可视化|matplotlib04-绘图风格(plt.style)大全


方法六、直接输出矢量图

仅限于Jupyter Notebook中使用Matplotlib时,可以添加如下代码输出矢量图:

添加修改参数:

%config InlineBackend.figure_format='svg'#输出矢量图设置

方法七,savefig设置

详细参数如下, dpi 可设置分辨率,metadata可设置保存格式, ‘png' 、'pdf' 、'svg'

plt.savefig(fname, *, dpi='figure', format=None, metadata=None, bbox_inches=None, pad_inches=0.1)

当然,以上方法多数情况下是联合使用的~


一个小例子

#默认绘图
import matplotlib.pyplot as plt
plt.bar([1, 2, 3], [3, 2, 1])
plt.show()
#设置分辨率、主题后绘图
import matplotlib.pyplot as plt
plt.figure(dpi=120)