在 alt.Chart() 中指定标签的颜色
Specifiy colors for labels in alt.Chart()
假设我想用相应的颜色 ['blue', 'yellow', 'green']
绘制 ['foo', 'bar', 'test']
。我的解决方案如下:
alt.Chart(df, height=600, width=1100).mark_circle(size=100).encode(
x='x',
y='y',
color=alt.Color('title:N', legend=None, scale=alt.Scale(range=['blue', 'yellow', 'green'])),
tooltip=['sample', 'title']
).properties(
selection=click
).interactive()
但这似乎是按任意顺序选择颜色,而不是像我预期的那样按升序排列。我希望 foo
被分配 blue
颜色并且 bar
应该变成 yellow
等等。
是否有可能 link 这个(标签和颜色)以某种方式?
Customizing Colors 部分的文档中有一些关于此的信息。简而言之,如果您想控制将哪些值分配给哪些颜色,您可以使用 domain
参数:
scale = alt.Scale(domain=['foo', 'bar', 'test'], range=['blue', 'yellow', 'green'])
假设我想用相应的颜色 ['blue', 'yellow', 'green']
绘制 ['foo', 'bar', 'test']
。我的解决方案如下:
alt.Chart(df, height=600, width=1100).mark_circle(size=100).encode(
x='x',
y='y',
color=alt.Color('title:N', legend=None, scale=alt.Scale(range=['blue', 'yellow', 'green'])),
tooltip=['sample', 'title']
).properties(
selection=click
).interactive()
但这似乎是按任意顺序选择颜色,而不是像我预期的那样按升序排列。我希望 foo
被分配 blue
颜色并且 bar
应该变成 yellow
等等。
是否有可能 link 这个(标签和颜色)以某种方式?
Customizing Colors 部分的文档中有一些关于此的信息。简而言之,如果您想控制将哪些值分配给哪些颜色,您可以使用 domain
参数:
scale = alt.Scale(domain=['foo', 'bar', 'test'], range=['blue', 'yellow', 'green'])