Python 如何为Plotly条形图指定颜色?
我有几行代码创建了一个伟大的条形图Python 如何为Plotly条形图指定颜色?,python,python-3.x,plotly,Python,Python 3.x,Plotly,我有几行代码创建了一个伟大的条形图 import plotly.express as px fig = px.bar(df, x="site_name", y="value", color="variable", title="2019 & 2020 Revenue vs. Expenses") fig.show() 下面是一些示例数据 # Import pandas library import pan
import plotly.express as px
fig = px.bar(df, x="site_name", y="value", color="variable", title="2019 & 2020 Revenue vs. Expenses")
fig.show()
下面是一些示例数据
# Import pandas library
import pandas as pd
# initialize list of lists
data = [['14', '20 Hudson Yards_IB', 'revenue', '2651324.42'],
['5', '5 Camden Yards', 'revenue', '2772115.61'],
['12', 'PHO_SUNS', 'revenue', '2818249.28'],
['87', 'OSUMC--MAIN', 'expense', '4300628.21'],
['7', 'DA STADIUM', 'expense', '6452307.48'],
['99', '50 Midtown East', 'expense', '3534523.12']]
# Create the pandas DataFrame
df_result = pd.DataFrame(data, columns = ['index', 'site_name', 'variable', 'value'])
# print dataframe.
df_result
结果:
index site_name variable value
0 14 20 Hudson Yards_IB revenue 2651324.42
1 5 5 Camden Yards revenue 2772115.61
2 12 PHO_SUNS revenue 2818249.28
3 87 OSUMC--MAIN expense 4300628.21
4 7 DA STADIUM expense 6452307.48
5 99 50 Midtown East expense 3534523.12
图表几乎正是我想要的,但我试图为两个变量获得两种特定的颜色。一个变量是“收入”,一个变量是“费用”。现在,使用上面显示的默认代码,我的图表是红色表示收入,蓝色表示支出。我真正想做的是使“收入”变为绿色,“支出”变为红色。如何控制这一点?使用
颜色\u离散\u顺序
并指定顺序,使用类别\u顺序
fig = px.bar(df, x="site_name", y="value", color="variable",
color_discrete_sequence=["green","red"],
category_orders={"variable":["Revenue","Expenses"]},
title="2019 & 2020 Revenue vs. Expenses")
或者使用color\u discrete\u map
fig = px.bar(df, x="site_name", y="value", color="variable",
color_discrete_map={"Revenue": "green", "Expenses":"red"},
category_orders={"variable":["Revenue","Expenses"]},
title="2019 & 2020 Revenue vs. Expenses")
使用
color\u discrete\u sequence
指定顺序,使用category\u orders
fig = px.bar(df, x="site_name", y="value", color="variable",
color_discrete_sequence=["green","red"],
category_orders={"variable":["Revenue","Expenses"]},
title="2019 & 2020 Revenue vs. Expenses")
或者使用color\u discrete\u map
fig = px.bar(df, x="site_name", y="value", color="variable",
color_discrete_map={"Revenue": "green", "Expenses":"red"},
category_orders={"variable":["Revenue","Expenses"]},
title="2019 & 2020 Revenue vs. Expenses")
我忙于工作中的其他事情;现在回到这里。我用一些样本数据更新了我的原始帖子。谢谢你的关注。我在工作中忙于其他事情;现在回到这里。我用一些样本数据更新了我的原始帖子。谢谢你的装扮,太棒了!非常感谢你!!“这个问题”下的另一个链接在这里已经有了答案:“也是非常有用的!!令人惊叹的!非常感谢你!!“这个问题”下的另一个链接在这里已经有了答案:“也是非常有用的!!