Home > Enterprise >  How to sort legends alphabetically in plotly dash with category_orders function
How to sort legends alphabetically in plotly dash with category_orders function

Time:03-29

I am using Plotly dash for creating a scatter plot. The legends I am getting in the final figure are randomly placed. I want to sort labels alphabetically from A to Z with category_orders function

fig = px.box(
            df,
            x=selected_x,
            y=selected_y,
            points='all',
            hover_data=hover_data,
            color=colour_by,
            width=800,
            height=600,
            labels={
                selected_y: "{} {}".format(selected_y_gene, selected_y),
                selected_x: "{} {}".format(selected_x_gene, selected_x),
            },

CodePudding user response:

If there are many labels, a simple alternative would be to use categoryorder e.g for x-axis using result

If you wish to use category_orders in plotly.express.box:

fig = px.box(
    df,
    x="species",
    y="sepal_length",
    points="all",
    category_orders=dict(species=['setosa', 'versicolor', 'virginica']),
    width=800,
    height=600,
)
fig
  • Related