How can I change the colour of the plotly express bar-chart to green in the following code?
import plotly.express as px
import pandas as pd
# prepare the dataframe
df = pd.DataFrame(dict(
x=[1, 2, 3],
y=[1, 3, 2]
))
# prepare the layout
title = "A Bar Chart from Plotly Express"
fig = px.bar(df,
x='x', y='y', # data from df columns
color= pd.Series('green', index=range(len(df))), # does not work
title=title,
labels={'x': 'Some X', 'y':'Some Y'})
fig.show()
It can be done:
- with color_discrete_sequence =['green']*3
, or,
- with fig.update_traces(marker_color='green')
after the bar is instantiated.
Ref: Community response
Literally copying an answer from the community response that @reservoirinvest posted. This is what I was looking for...
Not sure when this functionality was added, for anyone coming here looking for solutions to grouped bar charts, what most people will want in this case is not color_discrete_sequence but instead color_discrete_map. For example:
fig = px.bar(
df,
x='x',
y='y',
color='z', # if values in column z = 'some_group' and 'some_other_group'
color_discrete_map={
'some_group': 'red',
'some_other_group': 'green'
}
)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With