Python Altair - 条形图 - 刻度绑定
Python Altair - Bar Chart - Scale Binding
我想结合 Altair 文档中的两个示例来获得垂直滚动条形图的能力。一个用例是甘特图。
目前我只获得了水平滚动的能力,图表内容被压缩到我定义的属性高度:
import altair as alt
from vega_datasets import data
source = data.wheat()
bars = alt.Chart(source).mark_bar().encode(
x='wheat:Q',
y="year:O"
)
text = bars.mark_text(
align='left',
baseline='middle',
dx=3 # Nudges text to right so it doesn't appear on top of the bar
).encode(
text='wheat:Q'
)
selection = alt.selection_interval(bind='scales')
(bars + text).properties(height=300).add_selection(
selection
)
如何配置图表以保留原始比例并允许在定义的高度内滚动?
谢谢!
分类编码,例如序数 (":O"
) 和标称 (":N"
) 不能有比例限制选择。要使垂直轴具有交互性,您应该使 y 编码量化。例如:
bars = alt.Chart(source).mark_bar(orient='horizontal').encode(
x='wheat:Q',
y='year:Q',
)
我想结合 Altair 文档中的两个示例来获得垂直滚动条形图的能力。一个用例是甘特图。
目前我只获得了水平滚动的能力,图表内容被压缩到我定义的属性高度:
import altair as alt
from vega_datasets import data
source = data.wheat()
bars = alt.Chart(source).mark_bar().encode(
x='wheat:Q',
y="year:O"
)
text = bars.mark_text(
align='left',
baseline='middle',
dx=3 # Nudges text to right so it doesn't appear on top of the bar
).encode(
text='wheat:Q'
)
selection = alt.selection_interval(bind='scales')
(bars + text).properties(height=300).add_selection(
selection
)
如何配置图表以保留原始比例并允许在定义的高度内滚动?
谢谢!
分类编码,例如序数 (":O"
) 和标称 (":N"
) 不能有比例限制选择。要使垂直轴具有交互性,您应该使 y 编码量化。例如:
bars = alt.Chart(source).mark_bar(orient='horizontal').encode(
x='wheat:Q',
y='year:Q',
)