Python 在altair中的transform_calculate中使用自定义函数
我有一个条形图,我想在每个条形图的上方加上每个条形值的近似值。 这个值是个大数字,我有一个格式化数字的函数,例如:10000$到10k$。我该如何应用它呢Python 在altair中的transform_calculate中使用自定义函数,python,altair,Python,Altair,我有一个条形图,我想在每个条形图的上方加上每个条形值的近似值。 这个值是个大数字,我有一个格式化数字的函数,例如:10000$到10k$。我该如何应用它呢 base = alt.Chart(target_df_hahu).mark_bar().encode( alt.X('monthdate(date):O'), alt.Y('value'), color = 'variable' ) 我试过吹代码 text = base.mark_text().e
base = alt.Chart(target_df_hahu).mark_bar().encode(
alt.X('monthdate(date):O'),
alt.Y('value'),
color = 'variable'
)
我试过吹代码
text = base.mark_text().encode(
text = 'value:Q'
).transform_calculate(
value=custom_function(datum.value)
)
base+text
计算转换由Vega渲染器在Javascript中计算,因此不能包含Python中定义的自定义功能。计算转换必须是包含javascript语法定义良好子集的字符串,利用中列出的任何功能。这可以通过内联表达式完成,内联表达式可以通过alt import expr中的
访问。像expr.toString(expr.floor(datum.value/10**3))
但是没有任何方法可以使用python函数吗?