matplotlib.pyplot 提供一系列类似Matlab的命令式函数。每个函数可以对图形对象做一些改动,比如:新建一个图形对象、在图形中开辟绘制区、在绘制区画一些曲线、为曲线打上标签等等。在matplotlib.pyplot中,大部分状态是跨函数调用共享的。因此,它会跟踪像当前图形对象和绘制区,绘制函数直接作用于当前绘制对象。
先画一条线
举一个最简单的例子,画一条直线练练手吧,代码如下:
|
|
第一行是通过给定四个点画一条曲线(直线),四个点只给出纵坐标,横坐标是隐含的[0, 1, 2, 3];第二行设置Y轴标签;最后一行将图形展示出来。
line.png
plot函数详解
plot() 是一个多用途的命令函数,可以给定任意多的参数。例如,如果不想用默认的X轴坐标,可以用以下命令:
|
|
其中,横坐标是[1, 2, 3, 4],纵坐标是[1, 4, 9, 16]。
此外,对于每一组坐标,可以提供第三个可选参数——格式字符串,用于指定颜色以及线条类型。格式字符串与Matlab类似,包括一个颜色串以及一个线条样式串。默认的格式字符串是’b-’,代表蓝色实线。但是,也可以指定画成红色小圆圈,例如:
|
|
points.png
例子中,axis()函数接收一个列表[xmin, xmax, ymin, ymax]作为参数,用来指定坐标轴的范围。
plot()函数支持的格式化字符串列表如下:
线条样式
‘-’ | 实线 |
---|---|
‘–’ | (短划)虚线 |
‘-.’ | (短划点间隔)虚线 |
‘:’ | (点)虚线 |
‘.’ | 点 |
‘,’ | 像素点(小) |
‘o’ | 圆圈 |
‘v’ | (向下)三角形 |
‘^’ | (向上)三角形 |
‘<’ | (向左)三角形 |
‘>’ | (向右)三角形 |
‘1’ | |
‘2’ | |
‘3’ | |
‘4’ | |
’s' | square - 正方形 |
‘p’ | pentagon - 正五边形 |
‘*’ | 五角星 |
‘h’ | hexagon - 正六边形 |
‘H’ | hexagon - 正六边形 |
‘+’ | 加号 |
‘x’ | 叉号 |
‘D’ | diamond - 菱形 |
’d' | diamond - 菱形(扁) |
'' | 垂直竖线 |
‘_’ | 水平横线 |
颜色
‘b’ | blue - 蓝色 |
---|---|
‘g’ | green - 绿色 |
‘r’ | red - 红色 |
‘c’ | cyan - 蓝绿色 |
’m' | magenta - 品红色 |
‘y’ | yellow - 黄色 |
‘k’ | black - 黑色 |
‘w’ | white - 白色 |
numpy数值计算
如果matplotlib只能使用列表,那么数值计算方面的能力将大打折扣。一般情况下,做数值计算都是使用numpy数组,在matplotlib中也可以使用。事实上,在matplotlib内部,所有序列都会先转化成numpy数组。下面这个例子,演示使用numpy数组,用一条命令画几条样式不同的曲线。
|
|
numeric.png
看到numpy数组的威力了吧!
作者:fasionchan