如何通过pivot_ui配置适配Voila的可动态交互折线图
实现Voila中支持Y轴切换的动态折线图
针对你的需求,以下是修正并调整后的代码,实现以列a为X轴、初始列b为Y轴的折线图,同时支持拖拽切换Y轴为列c:
from pivottablejs import pivot_ui import pandas as pd from IPython.display import display, HTML # 修正DataFrame创建语法错误 df = pd.DataFrame({ "a": [1, 2, 3], "b": [30, 45, 60], "c": [100, 222, 3444] }) display(df) # 调整pivot_ui参数以满足需求 pivot_ui( df, outfile_path='pivottablejs.html', rendererName="Line Chart", rows=["a"], # 将a列设为X轴(行维度) values=["b", "c"], # 提供可切换的Y轴字段(数值维度) aggregatorName="Sum" # 因每个a对应唯一值,Sum不影响结果,保持默认聚合方式 ) # 修正HTML路径的引号错误 display(HTML('pivottablejs.html'))
关键调整说明:
- 修复了原代码中
pd.DataFrame的语法错误(将圆括号改为大括号) - 把
cols参数替换为values,将b和c列为可选数值字段,支持拖拽切换 - 保留
rows=["a"]固定作为X轴维度,确保折线图的X轴始终是a列的数值 - 修正了
IPython.display.HTML的引号闭合错误
使用方法:
在Voila中运行代码后,打开生成的交互表格界面:
- 初始折线图会以
a为X轴、b为Y轴展示 - 若要切换Y轴为
c,只需将左侧字段列表中的c拖拽到数值区域(或替换原有的b),折线图会自动更新
内容的提问来源于stack exchange,提问作者user19758369
相关产品推荐
相关产品推荐

