【发布时间】:2020-07-03 00:22:54
【问题描述】:
我正在使用streamlit 构建仪表板,我想呈现两个图表并排显示,使用altair 效果很好,hconcat 函数允许我这样做。
import altair as alt
df1 = pd.DataFrame({'metric':list('ab'),
'value':[8,10]})
df2 = pd.DataFrame({'metric':list('xyz'),
'value':[5,9,7]})
chart_1 = (alt.Chart(df1).mark_bar().encode(x='metric', y='value'))
chart_2 = (alt.Chart(df2).mark_bar().encode(x='metric', y='value'))
(chart_1 | chart_2)
我希望一个图表的 Y 轴位于左侧,另一个图表的 Y 轴位于右侧,但尚未找到解决方案。配置可以在图表级别进行:
chart_2 = (alt.Chart(df2).mark_bar().encode(x='metric', y='value')).configure_axisY(orient='right')
但是当使用hconcat func 呈现时会引发异常:
ValueError: Objects with "config" attribute cannot be used within HConcatChart. Consider defining the config attribute in the HConcatChart object instead.
有没有办法做到这一点?
提前致谢
【问题讨论】: