Wie kann ich Matplotlib aus sich wiederholenden Farben stoppen?

stimmen
1

Ich habe diesen Code:

plist = ['p5', 'p14', 'p23', 'p32', 'p41', 'p50', 'p59', 'p68', 'p77', 'p85', 'p95']


for pltcount in range(len(plist)):
    plt.plot(data1[pltcount], np.exp(data2)[pltcount], marker='o', label=str(plist[pltcount]))
plt.legend()
plt.show()

Dies ist mit der plt.style.use('fivethirtyeight') die Plots schöner zu machen. Ich habe Beispiele gefunden , wo ich die Farben manuell zuweisen. Was passiert , wenn ich es automatisch und von einigen bekannten Paletten sein?

Geben

Veröffentlicht am 08/11/2018 um 00:04
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
2

Wie über die Farben des Regenbogens? Der Schlüssel hier ist zu verwenden ax.set_prop_cycleFarben , die jeder Zeile zuzuweisen.

NUM_COLORS = len(plist)

cm = plt.get_cmap('gist_rainbow')
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_prop_cycle('color', [cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
# Or,
# ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
for i, p in enumerate(plist):
    ax.plot(data1[i], np.exp(data2)[i], marker='o', label=str(p))

plt.legend()
plt.show()

Borrowed von hier . Andere Optionen möglich.

Beantwortet am 08/11/2018 um 00:10
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more