Ah! W rzeczywistości, linestyle='dashed'
działa, po prostu strzały kołczanów są wypełniane domyślnie i nie mają zestawu linii. To łaty zamiast ścieżek.
Jeśli zrobisz coś takiego:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('equal')
ax.quiver((0,0), (0,0), (3,1), (1,0), angles='xy', scale_units='xy', scale=1,
linestyle='dashed', facecolor='none', linewidth=1)
ax.axis([-4, 4, -4, 4])
plt.show()
Dostaniesz przerywane strzałki, ale chyba nie do końca, co miałeś na myśli.
Można bawić z niektóre parametry, aby uzyskać nieco bliżej, ale jeszcze dokładnie nie wyglądają ładnie:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('equal')
ax.quiver((0,0), (0,0), (3,1), (1,0), angles='xy', scale_units='xy', scale=1,
linestyle='dashed', facecolor='none', linewidth=2,
width=0.0001, headwidth=300, headlength=500)
ax.axis([-4, 4, -4, 4])
plt.show()
Dlatego kolejnym Rozwiązaniem byłoby wykorzystanie luki :
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('equal')
ax.quiver((0,0), (0,0), (3,1), (1,0), angles='xy', scale_units='xy', scale=1,
hatch='ooo', facecolor='none')
ax.axis([-4, 4, -4, 4])
plt.show()
'lineStyle = 'dashed'' ma działać, (zgodnie z dokumentacją) (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.quiver). Oczywiście nie działa. To prawdopodobnie błąd. –
@JoeKington: :(Jakieś sugestie dotyczące obejścia problemu? – Mehrdad
Nie z mojej głowy, niestety ... –