Как рисовать стрелки в Matplotlib

Как рисовать стрелки в Matplotlib

Чтобы рисовать стрелки в Matplotlib, вы можете использовать функцию matplotlib.pyplot.arrow , которая использует следующий синтаксис:

matplotlib.pyplot.стрелка (х, у, дх, 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 ) 

#display plot 
plt.show()
Стрелка на графике matplotlib

Обратите внимание, что мы можем установить 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 ) 

#display plot 
plt.show() 
Вертикальная стрелка в matplotlib

Пример 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' ) 

#display plot 
plt.show() 
Стрелка с нестандартным цветом в matplotlib

Полный список свойств стилей, которые можно применить к стрелкам, вы можете найти здесь .

Пример 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))

#display plot 
plt.show() 
Стрелка с аннотацией в matplotlib

Дополнительные ресурсы

Как построить круги в Matplotlib (с примерами)
Как рисовать прямоугольники в Matplotlib (с примерами)

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.