Matplotlib是Python的绘图库,它与NumPy一起使用,提供了一个环境,是MatLab的有效开源替代方案,它可以与PyQt和wxPython等图形工具包一起使用
Matplotlib模块最初由John D. Hunter编写。自2012年以来,Michael Droettboom是主要开发人员。目前,Matplotlib版本。 1.5.1是可用的稳定版本。该软件包以二进制形式提供,也可以以源代码形式在www.matplotlib.org
按照惯例,通过添加以下语句将包导入到Python脚本中-
from matplotlib import pyplot as plt
这里 pyplot()是matplotlib库中最重要的函数,用于绘制2D数据。以下脚本绘制了等式 y=2x + 5
import numpy as np from matplotlib import pyplot as plt x = np.arange(1,11) y = 2 * x + 5 plt.title("Matplotlib demo") plt.xlabel("x axis caption") plt.ylabel("y axis caption") plt.plot(x,y) plt.show()
通过 np.arange()函数作为 x轴上的值创建ndarray对象x。 y轴上的相应值存储在另一个 ndarray对象y 中。这些值是使用matplotlib软件包的pyplot子模块的 plot()函数绘制的。
图形表示由 show()函数显示。
通过向 plot()函数添加格式字符串,可以离散地显示值,而不是线性图。可以使用以下格式字符。
Sr.No. | Character & 描述 |
---|---|
1 |
'-' 实线样式 |
2 |
'-' 虚线样式 |
3 |
'-.' 点划线样式 |
4 |
':' 虚线样式 |
5 |
'.' 点标签 |
6 |
',' 像素标签 |
7 |
'o' 圆形标签 |
8 |
'v' Triangle_down标签 |
9 |
'^' Triangle_up标签 |
10 |
'<' Triangle_left标签 |
11 |
'>' Triangle_right标签 |
12 |
'1' Tri_down标签 |
13 |
'2' Tri_up标签 |
14 |
'3' Tri_left标签 |
15 |
'4' Tri_right标签 |
16 |
's' 方形标签 |
17 |
'p' 五角大楼标签 |
18 |
'*' 星标 |
19 |
'h' Hexagon1标签 |
20 |
'H' Hexagon2标签 |
21 |
'+' 加号标签 |
22 |
'x' X标签 |
23 |
'D' 钻石笔 |
24 |
'd' 细钻石标签 |
25 |
'|' Vline标签 |
26 |
'_' 划线器 |
还定义了以下颜色缩写。
字符 | 颜色 |
---|---|
'b' | 蓝色 |
'g' | 绿色 |
'r' | 红色 |
'c' | 青色 |
'm' | 洋红色 |
'y' | 黄色 |
'k' | 黑色 |
'w' | 白色 |
要显示代表点的圆,而不是上面的示例中的线,请使用" ob" 作为plot()函数中的格式字符串。
import numpy as np from matplotlib import pyplot as plt x = np.arange(1,11) y = 2 * x + 5 plt.title("Matplotlib demo") plt.xlabel("x axis caption") plt.ylabel("y axis caption") plt.plot(x,y,"ob") plt.show()
上面的代码应产生以下输出-
正弦波图
以下脚本使用matplotlib生成正弦波图。
import numpy as np import matplotlib.pyplot as plt # 计算正弦曲线上点的 x 和 y 坐标 x = np.arange(0, 3 * np.pi, 0.1) y = np.sin(x) plt.title("sine wave form") # 使用 matplotlib 绘制点 plt.plot(x, y) plt.show()
subplot()
subplot()函数允许您在同一图中绘制不同的事物。在以下脚本中,绘制了正弦和余弦值。
import numpy as np import matplotlib.pyplot as plt # 计算正弦和余弦曲线上点的 x 和 y 坐标 x = np.arange(0, 3 * np.pi, 0.1) y_sin = np.sin(x) y_cos = np.cos(x) # 设置一个高度为 2 和宽度为 1 的子图网格, #并将第一个这样的子图设置为活动。 plt.subplot(2, 1, 1) # 制作第一个子图 plt.plot(x, y_sin) plt.title('Sine') # 将第二个子图设置为活动,并制作第二个图。 plt.subplot(2, 1, 2) plt.plot(x, y_cos) plt.title('Cosine') # 显示图。 plt.show()
上面的代码应产生以下输出-
bar()
pyplot子模块提供了 bar()函数来生成条形图。下面的示例生成两组 x 和 y 数组的条形图。
from matplotlib import pyplot as plt x = [5,8,10] y = [12,16,6] x2 = [6,9,11] y2 = [6,15,7] plt.bar(x, y, align = 'center') plt.bar(x2, y2, color = 'g', align = 'center') plt.title('Bar graph') plt.ylabel('Y axis') plt.xlabel('X axis') plt.show()
此代码应产生以下输出-
参考链接
https://www.learnfk.com/numpy/numpy-matplotlib.html
标签:plt,标签,pyplot,无涯,Matplotlib,matplotlib,np,import,NumPy From: https://blog.51cto.com/u_14033984/7881858