Python 基于值更改条形图颜色
我有以下数据: 8,518,000 27,525,000 20,532,000 12,897,000 (27,858,000) (5,266,000) (18,442,000) (78,850,000) (43,813,000) (26,920,000) (4,501,000) (19,619,000) (12,938,000) 前四年为正值,后九年为负值 对于我的plotly条形图,我希望颜色在正时为黑色,负时为红色。给这个上色最简单的方法是什么Python 基于值更改条形图颜色,python,plotly,bar-chart,Python,Plotly,Bar Chart,我有以下数据: 8,518,000 27,525,000 20,532,000 12,897,000 (27,858,000) (5,266,000) (18,442,000) (78,850,000) (43,813,000) (26,920,000) (4,501,000) (19,619,000) (12,938,000) 前四年为正值,后九年为负值 对于我的plotly条形图,我希望颜色在正时为黑色,负时为红色。给这个上色最简单的方法是什么 现在我用marker\u color='red
现在我用marker\u color='red'将所有内容设置为红色,但marker\u color[0:3]='black'会导致错误。您的问题有点不清楚,但如果我理解正确,您可以为每个数据点创建颜色列表,然后将此颜色列表的字典传递给
marker
参数
import plotly.graph_objects as go
y = [8510000, 27525000, 20532000, 12897000,
27858000, 5266000, 18442000, 78850000, 43813000, 26920000, 4501000, 19619000, 12938000]
# colors list with first 4 set to 'black', last 9 set to 'red'
colors = ['black']*4 + ['red']*9
data = [dict(type='bar',
y=y,
marker=dict(color=colors)
)]
fig = go.Figure(data=data)
fig.show()
你的问题很模糊,很难理解。例如:这些年到底是多少年。试着用一些例子来解释你的疑问。你能提供更多的代码来澄清你想要什么吗?这也是数据元组还是带有数千个分隔符的数字?