Altair facet 图表保存单个图像
Altair facet charts save individual image
如何将 Altair .facet 图表拆分为单独的图像并选择保存每个图像。
使用 .facet 时是否可以保存单个图像?
提供了带有整个组图像保存选项的 .facet 图表的基本示例。
(来自 https://altair-viz.github.io/user_guide/compound_charts.html#faceted-charts 的屏幕截图)
您只能保存完整图表;没有单独保存单个图表的子面板的机制。
作为解决方法,您可以将这些子面板重新创建为单个图表。这是使用条件不透明度的一种可能方法:
import altair as alt
from vega_datasets import data
iris = data.iris()
chart = alt.Chart(iris).mark_point().encode(
x='petalLength:Q',
y='petalWidth:Q',
color='species:N'
).properties(
width=160,
height=160
)
for species in ['setosa', 'versicolor', 'virginica']:
chart.encode(
opacity=alt.condition(
f"datum.species == '{species}'", alt.value(1), alt.value(0)
)
).display()
如何将 Altair .facet 图表拆分为单独的图像并选择保存每个图像。
使用 .facet 时是否可以保存单个图像?
提供了带有整个组图像保存选项的 .facet 图表的基本示例。
(来自 https://altair-viz.github.io/user_guide/compound_charts.html#faceted-charts 的屏幕截图)
您只能保存完整图表;没有单独保存单个图表的子面板的机制。
作为解决方法,您可以将这些子面板重新创建为单个图表。这是使用条件不透明度的一种可能方法:
import altair as alt
from vega_datasets import data
iris = data.iris()
chart = alt.Chart(iris).mark_point().encode(
x='petalLength:Q',
y='petalWidth:Q',
color='species:N'
).properties(
width=160,
height=160
)
for species in ['setosa', 'versicolor', 'virginica']:
chart.encode(
opacity=alt.condition(
f"datum.species == '{species}'", alt.value(1), alt.value(0)
)
).display()