[英]Python: Altair: Conditionally change axis label appearance (color, opacity)
[英]Python: Altair Condition Color Opacity
在 Altair 條件下,我想指定輔助條件顏色的不透明度。 我的散點數據相當密集,所以我希望未選擇的點消失(或多或少)。
使用此處的示例,我想要以下代碼:
selection = alt.selection_multi(fields=['Origin'])
color = alt.condition(selection,
alt.Color('Origin:N', legend=None),
alt.value('lightgray') # WANT THIS TO BE %50 OPACITY
)
scatter = alt.Chart(cars).mark_point().encode(
x='Horsepower:Q',
y='Miles_per_Gallon:Q',
color=color,
tooltip='Name:N'
)
legend = alt.Chart(cars).mark_point().encode(
y=alt.Y('Origin:N', axis=alt.Axis(orient='right')),
color=color
).add_selection(
selection
)
scatter | legend
使顏色條件如下:
color = alt.condition(selection,
alt.Color('Origin:N', legend=None),
alt.Color(value='lightgray', opacity=0.5)
)
但是我似乎無法弄清楚,而且網上似乎沒有任何解決方案。
謝謝!
不透明度是一個單獨的通道,因此您可以對顏色和不透明度設置條件:
color = alt.condition(selection,
alt.Color('Origin:N', legend=None),
alt.value('lightgray'))
opacity = alt.condition(selection, alt.value(1.0), alt.value(0.5))
scatter = alt.Chart(cars).mark_point().encode(
x='Horsepower:Q',
y='Miles_per_Gallon:Q',
color=color,
opacity=opacity,
tooltip='Name:N'
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.