当我使用altair
进行示例时,最后的图显示了两个方面的所有数据。但是,我只想显示每个方面的数据。
altair
可以选择吗?还是我未正确指定构面?
import altair as alt
from vega_datasets import data
df = data.airports()
df = df[df['state'].isin(['MD', 'WY'])][0:12]
chart = alt.Chart(df).mark_circle().encode(
alt.X('latitude'),
alt.Y('name', sort=alt.EncodingSortField(field="latitude", op="mean", order='descending')),
alt.Color('state'))
chart.facet(row='state')
答案 0 :(得分:2)
Altair的复合图默认情况下具有共享比例。如果您希望标度独立,则可以通过resolve_scale()
方法指定。
例如:
import altair as alt
from vega_datasets import data
df = data.airports()
df = df[df['state'].isin(['MD', 'WY'])][0:12]
chart = alt.Chart(df).mark_circle().encode(
alt.X('latitude'),
alt.Y('name', sort=alt.EncodingSortField(field="latitude", op="mean", order='descending')),
alt.Color('state'))
chart.facet(row='state').resolve_scale(y='independent')