Можно ли задать условия в цветовой схеме сюжетной тепловой карты?

Я создал тепловую карту, используя px.imshow


returns = returns.pivot('year', 'month', 'tradegain').fillna(0)
returns = returns\[\['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'\]\]
returns\['Total returns'\] = dayret.groupby(dayret.index.year).tradegain.sum().values
returns = round(returns,2)
fig = px.imshow(returns,text_auto=True,aspect='auto',title=title,color_continuous_scale= px.colors.sequential.BuGn_r)

Я хочу, чтобы отрицательные результаты отображались красным цветом, а все остальное зеленым. Есть ли способ сделать это?

Я также пытался сделать свою собственную цветовую схему

fig = px.imshow(returns,text_auto=True,aspect='auto',title=title,color_continuous_scale=['red','yellow','green','green',                                                                                              'green','green','green','green','green','green','green','green','green','green','green']) 

также с

fig = px.imshow(returns,text_auto=True,aspect='auto',title=title,color_continuous_scale=[[0.0,'Red'],[0.5,'Free ']])

нет хорошего результата

Я хочу, чтобы результат был визуально привлекательным.

может быть, этот ответ или этот ответ поможет сгладить

Mario 11.11.2022 06:47
Шаблоны Angular PrimeNg
Шаблоны Angular PrimeNg
Как привнести проверку типов в наши шаблоны Angular, использующие компоненты библиотеки PrimeNg, и настроить их отображение с помощью встроенной...
Создайте ползком, похожим на звездные войны, с помощью CSS и Javascript
Создайте ползком, похожим на звездные войны, с помощью CSS и Javascript
Если вы веб-разработчик (или хотите им стать), то вы наверняка гик и вам нравятся "Звездные войны". А как бы вы хотели, чтобы фоном для вашего...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Начала с розового дизайна
Начала с розового дизайна
Pink Design - это система дизайна Appwrite с открытым исходным кодом для создания последовательных и многократно используемых пользовательских...
Шлюз в PHP
Шлюз в PHP
API-шлюз (AG) - это сервер, который действует как единая точка входа для набора микросервисов.
14 Задание: Типы данных и структуры данных Python для DevOps
14 Задание: Типы данных и структуры данных Python для DevOps
проверить тип данных используемой переменной, мы можем просто написать: your_variable=100
1
1
109
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы должны создать свой собственный colorscale. Потому что в вопросе нет данных для return. Я привожу вам пример ниже:

import plotly.express as px
import numpy as np

z = np.array([[.1, .3, .5, .7, -.9],
     [1, .8, 60, -10, -.2],
     [.2, 0, -.5, .7, .9],
     [.9, .8, -.4, .2, 0],
     [.3, .4, -.5, .7, 1]])

maxz = np.max(z)+0.1
minz = np.min(z)

colorscale = ["green" if i>=0 else 'red' for i in np.arange(minz,maxz,0.01)]

fig = px.imshow(z, text_auto=True, aspect="auto", color_continuous_scale=colorscale)
fig.show()

Это работает, но i 0 по-прежнему отображается красным, а не зеленым цветом. я пытался заставить все это плавать, но не повезло

Anirudh B M 15.11.2022 05:50

@AnirudhBM Играйте с пороговым значением, которое добавляется maxz, вы можете изменить его с 0,1 на 0,01.

Hamzah 15.11.2022 07:42

Другие вопросы по теме