如果我添加一种颜色,可以巧妙地表示重排序的分类x轴散射



假设我有一组观察值,按行排序。每一次观察都有与之相关的定量和有序测量。

观察结果是基于定量测量(即顺序很重要),但因为在该维度中顺序不重要,所以我想使用分类x轴散射而不是数值x轴散射。

这一切都很好只要我不添加一个"颜色"的情节表达散射:

import pandas as pd
import plotly.express as px
metrics = ['m1', 'm2', 'm3', 'm4']
a = ['a', 'b', 'd', 'b']
b = [1,2,3,4]
c = [4,5,6,7]
d = ['w','x','y','z']
data = pd.DataFrame(data=[a,b,c,d], index=metrics).T

上面的代码将生成一个图表,其中观察结果按照它们在数据框中的顺序绘制:px.scatter(data, y='m2', x='m4').

正确的数据点排序

然而,如果我添加一个颜色,通过px.scatter(data, y='m2', x='m4', color='m1')顺序

是混乱的!如果添加color/hue

,则数据点的顺序不正确你知道怎么解决这个问题吗?

您可以使用参数'category_order',并在您想要指定顺序的维度中传递字典:例如在这种情况下添加参数category_orders={'m4':d}

相关内容

最新更新