MaxKB 生成 Echarts 图表


飞致云 发布于 2024-10-22 / 935 阅读 / 0 评论 /
工作流中支持使用 <echarts_rander></echarts_rander> 渲染 echarts 图表,该标签需要搭配函数库的函数进行使用。 1 Echart 图表 从 Apache EC

工作流中支持使用 <echarts_rander></echarts_rander> 渲染 echarts 图表,该标签需要搭配函数库的函数进行使用。

1 Echart 图表

从 Apache ECharts 选择图表模板,复制其 option 值。

1.1 散点图

1.2 漏斗图

1.3 雷达图

2 函数

函数里返回的数据格式为  {'actionType': actionType, 'option': option, 'style': style}

  • actionType 表示执行类型,只有俩值:EVAL 或 JSON。如果 option 是一个 json,那么 actionType 就写 JSON ,如果 option 是一段需要执行的 js 那就用 EVAL。

  • option 表示图表,其值来自 Echart 模板中的 option,可以直接复制过来粘贴使用。

  • style 表示样式,即图表的长度、宽度。

3 函数库

# coding=utf-8
import json
 
def get_echarts():
    option = """
option = {
  title: {
    text: '专家库年龄分布图',
    subtext: '',
    left: 'center'
  },
  tooltip: {
    trigger: 'item'
  },
  legend: {
    orient: 'vertical',
    left: 'left'
  },
  series: [
    {
      name: 'Access From',
      type: 'pie',
      radius: '50%',
      data: [
        { value: 1048, name: 'Search Engine' },
        { value: 735, name: 'Direct' },
        { value: 580, name: 'Email' },
        { value: 484, name: 'Union Ads' },
        { value: 300, name: 'Video Ads' }
      ],
      emphasis: {
        itemStyle: {
          shadowBlur: 10,
          shadowOffsetX: 0,
          shadowColor: 'rgba(0, 0, 0, 0.5)'
        }
      }
    }
  ]
};
  """
    return json.dumps({'actionType': 'EVAL', 'option': option, 'style': {'height': '600px', 'width': '100%'}})

4 高级编排

场景:问题中若包含对应图表的名称,就调用对应函数,指定回复里输出 <echarts_rander></echarts_rander>结果。

5 小助手问答



是否对你有帮助?