matplotlib.pyplot.barbs()函数
Matplotlib是一个Python绑定库,它为用户提供了一个类似于matlab的绘图框架。Matplotlib可以用于Python脚本、Python和IPythonshell、web应用服务器,以及各种图形用户界面工具包,如Tkinter、awxPython等。
注意:要了解更多信息,请参阅Python Matplotlib -概述
Matplotlib.pyplot.barbs ()
matplotlib.pyplot.barbs方法用于绘制一个2D的倒刺字段。
刺是什么?
倒刺主要用于气象学中绘制风速和风向,但也可用于绘制任何二维矢量。与箭头相比,倒钩能够提供关于矢量大小的更精确和定量的信息。这主要是因为箭头使用它们的长度来表示矢量的大小,而倒钩使用三角形或斜线,如下图所示:
/\ \
/ \ \
/ \ \ \
/ \ \ \
------------------------------
- 幅度的最大增量用三角形(或标志)表示。
- 最小的增量是一条半直线
语法:matplotlib.pyplot.barbs(x_coordinate, y_coordinate, x_direction, y_direction, [color])
参数:
X_coordinate:倒钩位置的x坐标
(如果有多个倒刺,可以是一个二维数组)
Y_coordinate:倒钩位置的y坐标
(如果有多个倒刺,可以是一个二维数组)
X_direction:倒刺轴方向的x分量
(如果有多个倒刺,可以是一个二维数组)
Y_direction:倒刺轴方向的y分量
(如果有多个倒刺,可以是一个二维数组)
颜色(可选):表示图中倒钩的颜色
可选参数
长度:倒刺的长度,以点为单位,倒刺的其他部分与此比例
枢轴:固定在网格上的倒钩的一部分;倒钩围绕这一点旋转。也许是一个数字,把倒钩从网格点移开那么多点
返回值:返回带有箭头的2D图形
注意:
- 如果未给出倒钩位置的横坐标和纵坐标,则将基于x_direction和y_direction以统一整数网格的形式生成倒钩位置
- 如果x坐标和y坐标是一维的,而x_direction和y_direction是二维的,那么使用x, y=numpy.meshgrid(x, y)将x坐标和y坐标扩展为二维网格。在本例中,x坐标和y坐标的长度必须匹配x_direction和y_direction的行维度和列维度
示例1
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-5, 5, 5)
X, Y = np.meshgrid(x, x)
U, V = 12 * X, 12 * Y
data = [(-1.5, .5, -6, -6),
(1, -1, -46, 46),
(-3, -1, 11, -11),
(1, 1.5, 80, 80),
(0.5, 0.25, 25, 15),
(-1.5, -0.5, -5, 40)]
data = np.array(data, dtype=[('x', np.float32),
('y', np.float32),
('u', np.float32),
('v', np.float32)])
plt.barbs(X, Y, U, V)
输出: