График: гистограмма красного цвета<0, зеленого>0, разделенная на группы.Python

Программы на Python
Ответить
Anonymous
 График: гистограмма красного цвета<0, зеленого>0, разделенная на группы.

Сообщение Anonymous »

Приведен кадр данных с двумя группами: (group1, group2), которые имеют значения > и < чем 0:
график:
  • Bar график
  • x = x
  • y = значения, разделенные на группу1, группу2
  • цвет = красный, если значение0
  • отображается легенда group1, grou2 разными цветами.
Однако мой текущий код не окрашивается так, как я ожидал, и легенда отображается тем же цветом:

Код: Выделить всё

import pandas as pd
import numpy as np
import plotly.express as px

df = pd.DataFrame( {
"x" : [1,2,3],
"group1" : [np.nan, 1, -0.5],
"group2" : [np.nan, -0.2, 1],
}).set_index("x")

df_ = df.reset_index().melt(id_vars = 'x')
fig = px.bar(df_, x='x', y='value', color='variable', barmode='group')
fig.update_traces(marker_color=['red' if val < 0 else 'green' for val in df_['value']], marker_line_color='black', marker_line_width=1.5)
fig.show()
OUT с указанием того, чего я хочу достичь:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/752 ... -by-groups
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»