Ho una matrice di valori y che formano una linea. Inoltre, ho una matrice con lo stesso numero di elementi della matrice y di valori che vanno da 0 a 1. Chiameremo questo array 'z'. Voglio tracciare l'array di valori y in modo che il colore di ogni punto corrisponda al valore z.gnuplot variabile linecolor in matplotlib?
In gnuplot, si può fare questo con il 'variabile lc':
plot ’data’ using 1:2:3 with points lc variable
Utilizzando il consiglio da qui: Matplotlib scatterplot; colour as a function of a third variable , sono stato in grado di utilizzare un grafico a dispersione, che ha fatto il lavoro:
import matplotlib as mpl
import matplotlib.pyplot as plt
plt.scatter(x, y, c=z, s=1, edgecolors='none', cmap=mpl.cm.jet)
plt.colorbar()
plt.show()
c'è un modo per fare questo con il metodo trama in matplotlib, simile a questo?
plt.plot(x, y, c=z)
Quando ho provato il codice precedente, tutte le linee sono apparse solo in nero.
In gnuplot 'lc variable' seleziona il tipo di linea * indice * basati sulla valore dell'ultima colonna. Per usarlo come colore, usa per es. 'lc palette z'. – Christoph