有没有办法在Altair图表中仅更改单个组的颜色,而保持其余部分不变?我喜欢默认的颜色方案,但是有一个组我想要更改颜色。
例如,在像这样的散点图中:
import altair as alt
from vega_datasets import data
iris = data.iris()
alt.Chart(iris).mark_point().encode(
x='petalWidth',
y='petalLength',
color=alt.Color('species')
)
我希望将“versicolor”的颜色更改为黑色,而不更改其余部分。我从文档中了解到,您可以指定自己的颜色方案,或为每个组分配颜色,如下所示:
domain = ['setosa', 'versicolor', 'virginica']
range_ = ['red', 'green', 'blue']
alt.Chart(iris).mark_point().encode(
x='petalWidth',
y='petalLength',
color=alt.Color('species', scale=alt.Scale(domain=domain, range=range_))
)
但我找不到一种简单的方法来改变一个物种的颜色而不影响其余颜色。
range_ = ['red', 'black', 'blue']
- r-beginnerschart = alt.Chart(...); graph = chart.to_dict(); graph ['encoding'] ['color'] ['scale'] ['range'] [1] ='black'; alt.Chart.from_dict(graph)
- r-beginners