Ho cercato su googleing se è possibile modificare solo il colore di una barra in un grafico creato da matplotlib. Immaginate questo grafico:come modificare il colore di una singola barra se la condizione è True matplotlib
diciamo che ho di valutazione da 1 a 10 e per ciascuno ho un grafico genera quando la scelta dell'utente la valutazione. Per ogni valutazione, uno di questi ragazzi vincerà.
Quindi, per ogni grafico, vorrei lasciare la barra del vincitore in un colore diverso, diciamo che Jim ha vinto la valutazione1. Jim bar sarebbe rosso, e gli altri blu.
Ho un dizionario con i valori, che ho cercato di fare è stato qualcosa di simile a questo:
for value in dictionary.keys(): # keys are the names of the boys
if winner == value:
facecolor = 'red'
else:
facecolor = 'blue'
ax.bar(ind, num, width, facecolor=facecolor)
qualcuno conosce un modo di fare questo?
Grazie in anticipo :)
è in realtà si utilizza facecolor in un grafico a barre che anche il lavoro. Ma comunque ho provato a cambiare colore e non è il problema – pavid
Ah ok, non ho mai usato Facecolor in precedenza, il mio errore. Ma puoi usare il colore come una lista, non sono sicuro che facecolor funzioni allo stesso modo. – GWW
Questa sarà una buona soluzione ma il problema è che la barra rossa potrebbe cambiare. Nell'esempio uso i ragazzi, quindi il vincitore potrebbe essere John e l'altro tempo Will. Io faccio il grafico automaticamente, quindi se scegli una valutazione1, ad esempio il vincitore è Peter ma nella valutazione 8 il vincitore potrebbe essere Simon. – pavid