2017-10-14 6 views
0

Ich erzeuge eine Heatmap mit plotly und ändere dann die Farbskala. Wenn die Werte der Heatmap alle positiv sind, führt dies zu einer Farbskala, die nicht den gesamten Farbbereich umfasst.Wie bekomme ich die volle Bandbreite einer Farbskala?

Wie kann ich das beheben?

Eingang

import pandas as pd 
import numpy as np 
import plotly.offline as py 
import cufflinks as cf 
cf.go_offline() 

index = range(500) 
columns = range(20) 
df = pd.DataFrame(np.random.randn(500, 20) + 100, index=index, columns=columns) 

fig = df.iplot(kind='heatmap', colorscale='Rdbu', asFigure=True) 
fig['data'][0].update(colorscale='Redblue') 
py.iplot(fig) 

Ausgabe

Image

die interactive graph See.

+2

Schauen Sie sich die Dokumentation an. Es sollte Parameter geben, um die Min- und Max-Werte der Colormap anzugeben. https://stackoverflow.com/q/3373256/2823755 könnte Sie beginnen. – wwii

Antwort

1

Ich habe das nicht vollständig herausgefunden, aber scheint plotly Farbskalen auszuwählen, je nachdem, ob die Daten aus positiven, negativen oder gemischten Zahlen bestehen.

In meinem Fall, als meine Zahlen alle positiv waren, bekam ich nur eine rote Farbskala. Die Angabe von min und max hat nicht geholfen.

Um das Problem zu lösen, habe ich meine eigene Farbskala mit Hilfe der plotly documentation definiert.

Verwandte Themen