Python的一些画图函数

电子常识

2637人已加入

描述

Python的画图工具箱即Matplotlib,类似于Matlab里面画图功能的包。

在Python 里有一个集成了Matplotlib和其他一些数学包比如Numpy的包,叫Pylab,所以一般只需要:from pylab import *

在这个包里面已经默认了numpy的alias为np,所以如果需要调用numpy直接就用它的alias就行。

#返回一个从x1到x2的共有num个数的数组(x1,x2,num都代表参数,下同)
X=np.linspace(x1, x2, num, endpoint=True)

这里如果endpoint设为True则重点为x2,设为False则终点为x2前一点。默认为True。

#创建一个m*n个点的图,图的分辨率为t
figure(figsize=(m, n), dpi=t)

#创建一个p*q的子图,接下来的图绘在第r块子图上
subplot(p, q, r)

#画出以X数组为x轴数值,Y数组为y轴数值的图,线条颜色为红色,线条宽度为2.0(像素)且连续
plot(X, Y, color="red", linewidth=2.0, linestyle="-")

#设置横纵轴的上下限
xlim(x1, x2)
ylim(y1, y2)

这里为了更好地设置上下限,可以用线条的X数组和Y数组的上下限来设置,如:
x1, x2 = X.min()1.1, X.max()1.1
y1, y2 = Y.min()1.1, Y.max()1.1

或者可以引入差分的思想:
xmin, xmax = X.min(), X.max()
ymin, ymax = Y.min(), Y.max()
dx = (xmax - xmin) * 0.2
dy = (ymax - ymin) * 0.2
x1, x2 = xmin-dx, xmax+dx
y1, y2 = ymin-dy, ymax+dy

#设置横纵轴的长度及划分(即在这些点标记)
xticks(np.linspace(x1, x2, num, endpoint=True))
yticks(np.linspace(y1, y2, num, endpoint=True))

这里的xticks或yticks里面的数组值可以设置成我们想要知道的特殊值。

在边界值包含了pi这种字符时,可以用LaTex来做划分的标签(使其更美观):
xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi],
[r'$-pi$', r'$-pi/2$', r'$0$', r'$+pi/2$', r'$+pi$'])
yticks([-1, 0, +1], [r'$-1$', r'$0$', r'$1$'])

本文主要参考Matplotlib tutorial.将里面的范例总结成了函数(参数)形式。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分