2017-10-14 5 views
0

Je génère une carte thermique en utilisant l'intrigue, puis en changeant l'échelle de couleurs. Si les valeurs de la carte thermique sont toutes positives, cela entraîne alors une échelle de couleurs qui ne couvre pas toute la gamme de couleurs.Comment obtenir la gamme complète d'un colorscale?

Comment puis-je résoudre ce problème?

Entrée

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) 

Sortie

Image

Voir la interactive graph.

+2

Regardez dans les documents. Il devrait y avoir des paramètres pour spécifier les valeurs min et max de la palette de couleurs. https://stackoverflow.com/q/3373256/2823755 pourrait vous aider à démarrer. – wwii

Répondre

1

Je ne l'ai pas entièrement compris, mais l'intrigue semble sélectionner des échelles de couleurs selon que les données sont composées de nombres positifs, négatifs ou mixtes.

Dans mon cas, quand mes chiffres étaient tous positifs, je recevais seulement une échelle de couleurs rouge. Spécifier les min et max n'a pas aidé.

Pour résoudre le problème, j'ai défini ma propre échelle de couleurs avec l'aide du plotly documentation.