如何在 matplotlib 中绘制箭头
要在 Matplotlib 中绘制箭头,您可以使用matplotlib.pyplot.arrow函数,该函数使用以下语法:
matplotlib.pyplot.arrow(x, y, dx, dy)
金子:
- x, y:箭头底部的 x 和 y 坐标
- dx、dy: x、y方向箭头的长度
本教程提供了该功能实际使用的几个示例。
示例1:绘制单个箭头
以下代码演示了如何在 Matplotlib 图上绘制单个箭头:
import matplotlib. pyplot as plt #define two arrays for plotting A = [3, 5, 5, 6, 7, 8] B = [12, 14, 17, 20, 22, 27] #create scatterplot, specifying marker size to be 40 plt. scatter (A, B, s= 40 ) #add arrow to plot plt. arrow (x= 4 , y= 18 , dx= 2 , dy= 5 , width= .08 ) #displayplot plt. show ()
请注意,我们可以设置dx=0来创建垂直箭头,设置dy=0来创建水平箭头。
例如,以下是创建垂直箭头的方法:
import matplotlib. pyplot as plt #define two arrays for plotting A = [3, 5, 5, 6, 7, 8] B = [12, 14, 17, 20, 22, 27] #create scatterplot, specifying marker size to be 40 plt. scatter (A, B, s= 40 ) #add arrow to plot plt. arrow (x= 4 , y= 18 , dx= 0 , dy= 5 , width= .08 ) #displayplot plt. show ()
示例 2:设置箭头样式
默认情况下,Matplotlib 中的箭头是蓝色且带有黑色边缘,但我们可以使用facecolor和edgecolor参数轻松更改此设置:
import matplotlib. pyplot as plt #define two arrays for plotting A = [3, 5, 5, 6, 7, 8] B = [12, 14, 17, 20, 22, 27] #create scatterplot, specifying marker size to be 40 plt. scatter (A, B, s= 40 ) #add arrow to plot plt. arrow (x= 4 , y= 18 , dx= 0 , dy= 5 , width= .08 , facecolor= 'red' , edgecolor= 'none' ) #displayplot plt. show ()
您可以在此处找到可应用于箭头的样式属性的完整列表。
示例 3:向箭头添加注释
以下代码显示如何在 Matplotlib 图上的箭头下添加注释:
import matplotlib. pyplot as plt #define two arrays for plotting A = [3, 5, 5, 6, 7, 8] B = [12, 14, 17, 20, 22, 27] #create scatterplot, specifying marker size to be 40 plt. scatter (A, B, s= 40 ) #add arrow to plot plt. arrow (x= 4 , y= 18 , dx= 0 , dy= 5 , width= .08 ) #add annotation plt. annotate (' General direction ', xy = (3.4, 17)) #displayplot plt. show ()