NumPy - Matplotlib
-
简述
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()
ndarray 对象 x 是从np.arange() function作为上的值x axis. 上的对应值y axis存储在另一个ndarray object y. 这些值是使用绘制的plot()matplotlib 包的 pyplot 子模块的功能。图形表示由show()功能。上面的代码应该产生以下输出 -代替线性图,可以通过将格式字符串添加到plot()功能。可以使用以下格式字符。序号 人物与描述 1 '-'实线样式2 '--'虚线样式3 '-.'点划线样式4 ':'虚线样式5 '.'点标记6 ','像素标记7 'o'圆形标记8 'v'Triangle_down 标记9 '^'三角向上标记10 '<'三角左标记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'Thin_diamond 标记25 '|'V线标记26 '_'直线标记还定义了以下颜色缩写。特点 颜色 'b' 蓝色 'G' 绿色的 'r' 红色的 'C' 青色 '我' 品红 '和' 黄色的 '到' 黑色的 '在' 白色的 要显示代表点的圆圈,而不是上面示例中的线,请使用“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()
上面的代码应该产生以下输出 - -
正弦波图
以下脚本生成sine wave plot使用matplotlib。例子
import numpy as np import matplotlib.pyplot as plt # Compute the x and y coordinates for points on a sine curve x = np.arange(0, 3 * np.pi, 0.1) y = np.sin(x) plt.title("sine wave form") # Plot the points using matplotlib plt.plot(x, y) plt.show()
-
subplot()
subplot() 函数允许您在同一个图中绘制不同的东西。在以下脚本中,sine和cosine values被绘制。例子
import numpy as np import matplotlib.pyplot as plt # Compute the x and y coordinates for points on sine and cosine curves x = np.arange(0, 3 * np.pi, 0.1) y_sin = np.sin(x) y_cos = np.cos(x) # Set up a subplot grid that has height 2 and width 1, # and set the first such subplot as active. plt.subplot(2, 1, 1) # Make the first plot plt.plot(x, y_sin) plt.title('Sine') # Set the second subplot as active, and make the second plot. plt.subplot(2, 1, 2) plt.plot(x, y_cos) plt.title('Cosine') # Show the figure. plt.show()
上面的代码应该产生以下输出 - -
<="" h2="">
pyplot submodule提供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()
此代码应产生以下输出 -