自由屋推书网—热门的小说推荐平台!

你的位置: 首页 > 其他程序

Python调整matplotlib图片大小的3种方法汇总

2022-08-02 09:31:49

我们在使用matplotlib作图时,会遇到图片不清晰或者图片大小不是我们想要的,这个时候就需要调整下,这篇文章主要给大家介绍了关于Python调整matplotlib图片大小的3种方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下!

问题

如何设定matplotlib输出的图片大小?

import matplotlib.pyplot as plt

一、plt.figure(figsize=(n, n))

比如想让输出的图片大小为600x600像素:

plt.figure(figsize=(6, 6))
# 600 x 600 像素(先宽度 后高度)
# 注意这里的宽度和高度的单位是英寸,1英寸=100像素,所以要除以100
plt.plot([1,2,3,4])
plt.ylabel('some numbers')
plt.show()

二、plt.rcParams[‘figure.figsize’]=(n, n)

这一方法可以同时对多个图片设置大小:

import matplotlib.pyplot as plt
plt.rcParams['figure.figsize']=(12.8, 7.2)
# 全局设置输出图片大小 1280 x 720 像素

如果需要对某个图片设置其他大小,使用方法一(plt.figure(figsize=(n, n)))即可。

三、样式表+plt.style.use(‘xxx.mpstyle’)

新建文件,文件名为xxx.mpstyle,例如style.mpstyle。

编辑文件内容:

figure.figsize:12.8,7.2

在python文件中:

import matplotlib.pyplot as plt
plt.style.use('style.mpstyle')
# 样式表文件路径

如果需要对某个图片设置其他大小,使用方法一(plt.figure(figsize=(n, n)))即可。

补充:Python绘图问题:Matplotlib中指定图片大小和像素

主要作用为指定图片像素:

matplotlib.rcParams[‘figure.figsize’]#图片像素matplotlib.rcParams[‘savefig.dpi’]#分辨率

plt.savefig(‘plot123_2.png’, dpi=200)#指定分辨率

plt.rcParams['figure.figsize'] = (8.0, 4.0) # 设置figure_size尺寸
plt.rcParams['image.interpolation'] = 'nearest' # 设置 interpolation style
plt.rcParams['image.cmap'] = 'gray' # 设置 颜色 style
#figsize(12.5, 4) # 设置 figsize
plt.rcParams['savefig.dpi'] = 300 #图片像素
plt.rcParams['figure.dpi'] = 300 #分辨率
# 默认的像素:[6.0,4.0],分辨率为100,图片尺寸为 600&400
# 指定dpi=200,图片尺寸为 1200*800
# 指定dpi=300,图片尺寸为 1800*1200
# 设置figsize可以在不改变分辨率情况下改变比例
%matplotlib inline
import matplotlib # 注意这个也要import一次
import matplotlib.pyplot as plt
from IPython.core.pylabtools import figsize # import figsize
#figsize(12.5, 4) # 设置 figsize
plt.rcParams['savefig.dpi'] = 300 #图片像素
plt.rcParams['figure.dpi'] = 300 #分辨率
# 默认的像素:[6.0,4.0],分辨率为100,图片尺寸为 600&400
# 指定dpi=200,图片尺寸为 1200*800
# 指定dpi=300,图片尺寸为 1800*1200
# 设置figsize可以在不改变分辨率情况下改变比例
 
myfont = matplotlib.font_manager.FontProperties(fname=r'C:/Windows/Fonts/msyh.ttf') # 这一行
plt.plot((1,2,3),(4,3,-1))
plt.xlabel(u'横坐标',  fontproperties=myfont) # 这一段
plt.ylabel(u'纵坐标',  fontproperties=myfont) # 这一段
#plt.show()
plt.savefig('plot123_2.png', dpi=300) #指定分辨率保存

编辑推荐

热门小说