如何解决更改图表标签轴的颜色
我的可视化:
我已经使用 altair 进行了上述可视化,并想知道是否可以像使用钩子那样为标签添加其他颜色,以匹配图例的颜色。我想对 y 轴上的其他工具/标签执行相同的操作,但找不到方法(每个标签的颜色不同)。
heatmap = alt.Chart(
new_df
).mark_rect().encode(
x = alt.X('Time:O',axis=alt.Axis(labels=False)),y = alt.Y('tool:N',axis=alt.Axis(labelColor=alt.condition('datum.value == "hook"',alt.value('red'),alt.value('blue'))))
解决方法
VegaLite 支持相同条件下的多个测试,但我认为用 alt.Condition
编写是不可能的。但是,您可以看到 alt.Condition
返回一个字典,因此您可以直接编写此字典并传递测试列表:
import altair as alt
import pandas as pd
source = pd.DataFrame({
'a': ['AAA','BBB','CCC','DDD'],'b': [28,55,43,50]})
# You could use datum.value instead of datum.label
label_colors = {
'condition': [
{'test' : 'datum.label == "AAA"','value': 'steelblue'},{'test' : 'datum.label == "BBB"','value': 'purple'}],'value': 'red'} # The default value if no condition is met
alt.Chart(source).mark_bar().encode(
x=alt.X('a',axis=alt.Axis(labelColor=label_colors)),y='b')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。