Python matplotlab库使用方法及注意事项

CuterCorley 等级 127 0 0

1.Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法

import matplotlib.pyplot as plt
t = arange(-4*pi, 4*pi, 0.01)
y = sin(t)/t
plt.plot(t, y)
plt.title('www.jb51.net - test')
plt.xlabel(u'\u2103',fontproperties='SimHei')
#在这里,u'\u2103'是摄氏度,前面的u代表unicode,而引号里的内容,是通过在网上查找“℃”这一个符号的unicode编码得到的。这里的“摄氏度”是中文,要显示的话需要在后面加上fontproperties属性即可,这里设置的字体为黑体。
plt.ylabel(u'幅度',fontproperties='SimHei')#也可以直接显示中文。
plt.show()

2.将已知折线平滑化或者插值

使用 scipy 库中的 interpolate 中的 interp1d. 平滑前,

import numpy as np
from scipy import interpolate
import matplotlib.pyplot as plt
x = np.linspace(-np.pi, np.pi, 10)
y = np.sin(x)
plt.plot(x, y)

如图 未平滑时 平滑后,

f = interpolate.interp1d(x, y, kind='cubic')
nx = np.linspace(-np.pi, np.pi, 30)
ny = f(nx)
plt.plot(nx, ny)

如图 平滑后

3.使用matplotlib的savefig保存图片时不清晰以及不完整的解决办法

关于savefig的相关参数:

savefig(fname, dpi=None, facecolor=‘w’, edgecolor=‘w’,orientation=‘portrait’, papertype=None, format=None,
transparent=False, bbox_inches=None, pad_inches=0.1,frameon=None, metadata=None)

图片不清晰,需要指定dpi, 图片保存大小问题,设置bbox_inches=‘tight’ (bbox_inches:可选bbox英寸。只保存图形的给定部分。如果“紧”,试着找出数字的紧框。如果没有,请使用savefig.bbox)

plt.savefig("data/temp.png",dpi=500,bbox_inches = 'tight')#解决图片不清晰,不完整的问题

如需更多关于画图保存的问题,可以参考Python绘图问题:Matplotlib中指定图片大小和像素

本文原文首发来自博客专栏Python实战,由本人转发至https://www.helloworld.net/p/K5df5af3lHmw,其他平台均属侵权,可点击https://blog.csdn.net/CUFEECR/article/details/103059762查看原文,也可点击https://blog.csdn.net/CUFEECR浏览更多优质原创内容。

预览图
收藏
评论区