1 概述

Python组件支持编写代码自定义复杂的数据可视化效果,灵活拓展分析展示能力。另外,也可以在使用AIChat问数过程中,将高频数据问答结果一键转化为仪表盘的Python组件,生成主题看板。

2 业务场景

2.1 自定义复杂组件

1、场景描述:通过编写Python代码自定义复杂的数据可视化效果。

2、操作步骤

(1)在仪表盘的组件中,点击 + 添加 Python 组件,如下图所示:


(2)在代码编辑器中,输入所需的Python代码,如下图所示:

示例的Python代码如下:

import plotly.graph_objects as go

# 查询2019年各车系的销量、车型数以及同比情况
sql_json = {
"sel": ["车系", "销量", "车型数", "销量同比增长率", "车型数同比增长率"],
"conds": [${年}],
"from": "即席查询"
}
df_2019 = detail_trend_data_query_assistant(sql_json)

# 创建联合图展示
fig = go.Figure()

# 添加销量柱状图
fig.add_trace(
go.Bar(
x=df_2019['车系'],
y=df_2019['销量'],
name='销量',
marker_color='blue'
)
)

# 添加车型数柱状图
fig.add_trace(
go.Bar(
x=df_2019['车系'],
y=df_2019['车型数'],
name='车型数',
marker_color='green'
)
)

# 添加销量同比增长率折线图
fig.add_trace(
go.Scatter(
x=df_2019['车系'],
y=df_2019['销量同比增长率'],
mode='lines+markers',
name='销量同比增长率',
yaxis='y2',
line=dict(color='red')
)
)

# 添加车型数同比增长率折线图
fig.add_trace(
go.Scatter(
x=df_2019['车系'],
y=df_2019['车型数同比增长率'],
mode='lines+markers',
name='车型数同比增长率',
yaxis='y2',
line=dict(color='orange')
)
)

# 设置布局
fig.update_layout(
title="2019年各车系销量、车型数及同比情况",
xaxis=dict(title="车系"),
yaxis=dict(title="销量/车型数"),
yaxis2=dict(
title="同比增长率",
overlaying='y',
side='right'
),
title_x=0.5
)

import json

json_result = json.dumps([{"output_variable_name": "fig", "type": "plotly", "desc": "联合图展示2019年各车系销量、车型数及同比情况"}])
json_result


● Python组件当前仅支持通过接口获取动态数据,或在代码中写静态数据。

● 示例代码仅作为参考示例,代码中的查询语句需要根据实际的环境数据去修改。


(3)点击 运行 ,可查看效果:


2.2 添加AI问数结果到仪表盘中

1、场景描述:在使用AIChat问数过程中,将高频数据问答结果一键转化为仪表盘的Python组件,生成主题看板。

2、操作步骤

(1)将AI问数结果添加到仪表盘的操作入口有两个,如下图所示:

两个入口的功能一致,且当前仅支持将 分析模式 下的问数结果添加到仪表盘中。 


(2)输入问句,得到问数结果,如下图所示,AIChat的使用说明详见:AIChat 白泽帮助中心

(3)点击 添加到仪表盘 按钮,将问数结果添加到仪表盘中,如下图所示:

3 更多功能

4 注意事项

1、不支持多选问数结果插入到仪表盘。

2、Python组件本身不支持绑定字段,仅支持通过接口获取动态数据,或在代码中写静态数据。


3、Python组件编辑器不支持Ctrl+F搜索。

4、仅支持将 分析模式 下的问数结果添加到仪表盘中,不支持专家模式、不支持报表查询模式。

5、Python组件内容样式,仅支持通过Python代码修改,仪表盘无相关的样式设置项。