matplotlib绘制图形学习笔记
matplotlib是Python的一个绘图工具,和matlab十分相似。并且官方文档相当完整,在http://matplotlib.org/gallery.html页面有很多图,完全可以找到想要画的图,点进去然后将代码复制修改就可以了。
0. 常用的绘图命令和设置
matplotlib的pyplot子库提供了这些绘图API,因此首先导入import matplotlib.pyplot as plt
,如果要使用一些科学计算的函数,则需要导入numpy,import numpy as np
下面是一个简单的绘图例子:
import numpy as np
import matplotlib.pyplot as plt
#生成x,y序列,基本上和matlab一样
x = np.linspace(0, 10, 1000)
y = np.sin(x)
z = np.cos(x**2)
#1
plt.figure(figsize=(8,4))
#2
plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)
#3
plt.plot(x,z,"b--",label="$cos(x^2)$")
#4
plt.xlabel("Time(s)")
plt.ylabel("Volt")
plt.title("PyPlot First Example")
plt.ylim(-1.2,1.2)
plt.legend()
plt.show()
- 其中figure创建了一个绘图对象,并且是它成为当前的绘图对象。其中的figsize参数指定了绘图对象的宽度和高度,单位为英寸,并且绘图对象中每英寸的分辨率缺省值为80像素,因此为640*320.但是保存下的图像是每英寸100像素,所以为800*400。这些默认参数可以通过上节介绍的修改参数方法进行修改。
- plot的第一个参数是横坐标,第二个是纵坐标。关键字参数中,label给绘制的曲线一个名字,名字在图示中显示,字符串前后夹$,会使用latex引擎绘制数学公式。color指定颜色,linewidth指定曲线的宽度。
- b--是格式化字符串,b是蓝色,g是绿色,-代表实线,--代表虚线,-.代表点画线,:代表虚线。
- xlabel设置x轴的文字,ylabel设置y轴的文字,title设置图表的标题,ylim设置y轴的范围(注意这里如果设置比图表实际范围小,就会显示不完全),legend显示图示,也就是plot中lable参数,最后show显示创建的所有绘图对象。
1. 绘制子图
使用subplot绘制子图,subplot(numRows,numCols,plotNum),这里编号是从左到右,从上到下的顺序进行编号的。并且如果这三个数都小于10的话,可以将其缩写为一个整数,如subplot(323)
下面是一个例子,利用axisbg参数给每个轴设置不同的背景颜色:
for idx,color in enumerate('rgbyck'):
plt.subplot(320+idx+1,axisbg=color)
plt.show()
网友评论