Как я могу настроить 'matplotlib.patches.ArrowStyle'? - PullRequest
0 голосов
/ 09 июля 2019

Горячий я могу создать настроенный matplotlib.patches.ArrowStyle?

import matplotlib.pyplot as plt
from matplotlib.patches import ArrowStyle

plt.figure(1, figsize=(9,9))

ArrowStyle("Test", head_length=.4, head_width=200, tail_width=2)

ax = plt.subplot(111)

ax.annotate("",
            xy=(0.2, 0.2), xycoords='data',
            xytext=(0.8, 0.8), textcoords='data',
            arrowprops=dict(arrowstyle="Test",
                            connectionstyle="arc3"), 
            )

plt.show()

?

Я хотел бы изменить ширину головы ихвост.В документации matplotlib к matplotlib.patches.arrowstyle написано, что объект стиля стрелки можно создать как ArrowStyle("Fancy", head_length=.4, head_width=.4, tail_width=.4).Однако при изменении параметров стиль стрелки остается прежним.

1 Ответ

0 голосов
/ 09 июля 2019

Необходимо использовать предопределенный стиль, такой как Fancy.Кроме того, ArrowStyle и параметры должны быть добавлены в соответствующей позиции в пределах ax.annotate.

import matplotlib.pyplot as plt
from matplotlib.patches import ArrowStyle

plt.figure(1, figsize=(9,9))

ax = plt.subplot(111)

ax.annotate("",
            xy=(0.2, 0.2), xycoords='data',
            xytext=(0.8, 0.8), textcoords='data',
            arrowprops=dict(arrowstyle=("Fancy, head_length=5, head_width=10, tail_width=5"),
                            connectionstyle="arc3"), 
            )

plt.show()

enter image description here

...