#header-mark#
Vizzu 可视化图表组件
Vizzu
组件在Panel中渲染Vizzu图表。注意,要在notebook中使用Vizzu
组件,必须在加载Panel扩展时将'vizzu'作为参数传递,以确保初始化vizzu.js。
底层实现为panel.pane.Vizzu
,参数基本一致,参考文档:https://panel.holoviz.org/reference/panes/Vizzu.html
基本用法
PnVizzu
组件可以根据config
定义如何绘制数据(以列字典或DataFrame的形式定义):
Vizzu的主要卖点之一是在数据或config
更新时的动态动画。例如,如果我们更改"geometry",可以看到动画在两种状态之间平滑过渡。
列类型
PnVizzu
支持两种列类型:
'dimension'
:通常用于非数值数据和/或图表的独立维度(例如x轴)'measure'
:数值通常用于图表的因变量(例如y轴值)
PnVizzu
组件会根据数据的dtypes自动推断类型,但在某些情况下,可能需要使用column_types
参数显式覆盖列的类型。一个常见的例子是在x轴上绘制整数时,通常会被视为"measure",但在折线图或条形图的情况下应该被视为独立维度。
下面的示例演示了这种情况,这里我们希望将"index"视为独立变量,并使用column_types={'index': 'dimension'}
覆盖默认推断的类型:
预设
Vizzu提供了各种预设图表类型。在PnVizzu
组件中,您可以通过在config
中提供'preset'
作为键来使用这些预设。在下面的示例中,我们动态创建一个config
,根据RadioButtonGroup
切换preset
:
交互控制
PnVizzu
组件公开了许多选项,可以从Python和JavaScript更改。尝试交互式地测试这些参数的效果:
API
属性
属性名 | 说明 | 类型 | 默认值 |
---|---|---|---|
value | 以Python数组字典或DataFrame表示的数据 | dict|pd.DataFrame | — |
animation | 动画设置 | dict | {} |
config | 包含渲染特定静态图表或动画图表状态所需的所有参数 | dict | {} |
columns | 可选的列定义。如果未定义,将从数据中推断 | list | None |
column_types | 列类型定义,覆盖自动推断的类型 | dict | {} |
tooltip | 是否在图表上启用工具提示 | bool | False |
duration | 动画持续时间(毫秒) | int | 500 |
style | 图表样式配置 | dict | {} |
方法
方法名 | 说明 | 类型 |
---|---|---|
animate | 接受一个新的'data'、'config'和'style'值的字典,用于更新图表 | Callable |
stream | 向图表流式传输新数据 | Callable |
patch | 修补数据中的一行或多行 | Callable |
controls | 返回控制面板组件 | Callable |
Controls
src/examples/panel_vuepy/panes/Vizzu