/ / Nastavenie dĺžky pomlčky pri vykresľovaní šípky - python, matplotlib

Nastavenie dĺžky pomlčka pri kreslení šípka - python, matplotlib

S matplotlib je ľahké vykresliť čiaru pomocou prispôsobeného štýlu pomlčky

plt.plot([0, 5], [0, 5], dashes=(20.0, 20.0))
plt.show()

alebo

lines = plt.plot([0, 5], [0, 5])
lines[0].set_dashes((20.0, 20.0))
plt.show()

a zároveň je možné vykresliť šípky prerušovanou čiarou

plt.arrow(0, 0, 5, 5, linestyle="dashed")
plt.show()

Zdá sa, že nedokážem prísť na to, ako vykresliť šípy pomocou vlastného štýlu pomlčky

arrow = plt.arrow(0, 0, 5, 5)
?
plt.show()

ako pri použití funkcie plot dashes parameter dáva

AttributeError: "FancyArrow" object has no attribute "set_dashes"

a ako sa v chybe uvádza vrátená hodnota FancyArrow nemá žiadny set_dashes() metóda. Je to možné?

odpovede:

0 pre odpoveď č. 1

V súčasnej dobe si nemyslím, že je to možné ako Arrow trieda podporuje iba "solid" | "dashed" | "dashdot" | "dotted" štyri rôzne štýly. Aby bolo možné použiť prispôsobený štýl pomlčky, musí mať objekt ._dashSeq majetok, ktorý Arrow postráda. Preto vidím dôvod, prečo .set_dashes.

Ako už bolo povedané, v súčasnosti, aj keď .set_linestyle spôsob je stanovený Arrow, môžete „t, povedzme, nastaviť na čokoľvek iné ako 4 vyššie uvedené štýly. To znamená veci ako .set_linestyle("-") nie je možné.