Ich zeichne mehrere Zeilen in einem for
Block und ich legte den Stil jeder Zeile mit Matplotlib dashes Argument.Plot kontinuierliche Linie mit 'Bindestriche' Argument in Matplotlib Plot()
Eine (oder mehrere) dieser Linien müssen kontinuierlich sein. Ich habe keine Möglichkeit gefunden, eine solche Linie zu zeichnen, außer einen einzigen extrem langen Strich zu machen, wie in der MCVE unten zu sehen ist. Das funktioniert, fühlt sich aber eher haschisch an.
Gibt es einen "richtigen" Weg, dies zu erreichen?
(ich weiß, dass ich nur plt.plot()
ohne dashes
Argument verwenden, um eine fortlaufende Handlung zu produzieren, aber ich brauche eine Menge von benutzerdefinierten Stil Linien, gemischt mit einem oder mehreren kontinuierlichen Linien zu produzieren)
MCVE :
import matplotlib.pyplot as plt
import numpy as np
col = ['c', 'm', 'g', 'y', 'k']
c_dash = [[8, 4], [8, 4, 2, 4], [2, 2], [8, 4, 2, 4, 2, 4], [1000, 1]]
for i in range(5):
x, y = range(10), np.random.uniform(0., 10., 10)
plt.plot(x, y, color=col[i], dashes=c_dash[i])
plt.savefig('test.png', dpi=300)
Ist alles, was Sie bedeuten 'plt.plot (x, y, '-')'? – lanery
Grundsätzlich ja. Wenn Sie es versuchen, sehen Sie, dass das Bindestrich-Argument "-'' nicht akzeptiert. – Gabriel
Immer noch eine Art Hacky, aber 1000 mit 'np.inf' zu ersetzen scheint zu funktionieren. – lanery