当前位置: 首页 > news >正文

可视化图表API格式要求有哪些?Sugar BI详细代码示例(2)

Sugar BI中的每个图表可以对应一个数据 API,用户浏览报表时,选定一定的过滤条件,点击「查询」按钮将会通过 API 拉取相应的数据;前面说过,为了确保用户数据的安全性,Sugar BI上的所有数据请求都在Sugar BI的后端通过 curl 的方式访问产品线的 API,都是使用的POST请求。

POST 的数据是过滤条件、下钻、联动参数等,并且在请求的 Header 中会附加Sugar-Token.

Sugar BI支持多种类型的展示图表,每种类型的图表所需要的后端 API 返回的数据格式都有所区别,之前已经发布了

可视化图表API格式要求有哪些?Sugar BI详细代码示例(1)

今天,为大家带来其他图表所对应的数据 API 格式:

嵌套饼图

API 示例:/openapi/demo/chart?type=pieNested

response:


{"status": 0,  // 0表示成功,非0表示失败"msg": "",    // 失败时的提示信息"data": [[  // 内层的饼图数据{"name": "chrome","value": 46},{"name": "ie","value": 32},{"name": "fireFox","value": 36},......],[ // 外层的环形饼图数据// 注意外层子扇区的顺序需要与内层母扇区的顺序进行对应// 例如这里子扇区也是按照 chrome, ie, firefox 的顺序排列的{"name": "chrome49","value": 14},{"name": "chrome50","value": 32},{"name": "IE10","value": 10},{"name": "IE11","value": 22},{"name": "fireFox62","value": 20},{"name": "fireFox65","value": 6},......]]
}

漏斗图

API 示例:/openapi/demo/chart?type=funnel

response:


{"status": 0,  // 0表示成功,非0表示失败"msg": "",    // 失败时的提示信息"data": {"unit": "%",       // 单位,可以不传"data": [{"name": "首页","value": 12323,"url": "www.baidu.com" // 这个字段供超链接类型的下钻使用,在配置下钻时的「绑定超链接的数据字段」处填写url即可},{"name": "首页->列表页","value": 23457,"url": "www.baidu.com"},{"name": "首页->列表页->下单页","value": 23457,"url": "www.baidu.com"},......]}
}

字符云

API 示例:/openapi/demo/chart?type=wordCloud

response:


{"status": 0,  // 0表示成功,非0表示失败"msg": "",    // 失败时的提示信息"data": [{"name": "热词1","value": 46,"url": "www.baidu.com" // 这个字段供超链接类型的下钻使用,在配置下钻时的「绑定超链接的数据字段」处填写url即可},{"name": "热词2","value": 32,"url": "www.baidu.com"},{"name": "热词3","value": 16,"url": "www.baidu.com"},{"name": "热词4","value": 15,"url": "www.baidu.com"},......]
}

雷达图

API 示例:/openapi/demo/chart?type=radar

response:


{"status": 0,  // 0表示成功,非0表示失败"msg": "",    // 失败时的提示信息"data": {indicators:[{"text": "顶点1",  // 顶点展示的文字"max": 10,       // 该顶点的最大值"min": 0         // 该顶点的最小值,可不传,默认为0},{"text": "顶点2",  // 顶点展示的文字"max": 20,       // 该顶点的最大值"min": 5         // 该顶点的最小值,可不传,默认为0},{"text": "顶点3",  // 顶点展示的文字"max": 10,       // 该顶点的最大值"min": 2         // 该顶点的最小值,可不传,默认为0},......],"series": [{"name": "预算开支","value": [8, 18, 9, ...] // 数组元素个数和indicators相同},{"name": "实际开销","value": [9, 15, 7, ...] // 数组元素个数和indicators相同},......]}
}

里程碑

API 示例:/openapi/demo/chart?type=milestones

支持以下 3 种类型:

1.1 个日期维度,1 个非日期维度

response:


{ "status": 0, // 0表示成功,非0表示失败"msg": "","data": {"date": { // 日期维度描述"name": "date","alias": "发货日期"},"x2": [ // 非日期维度描述{"name": "x2","alias": "地区"}],"y": [], // 指标度量描述"data": [{"date": "2013年","date_sugar_origin": 2013,"date_sugar_date_type": "YEAR","x2": ["东北","中南","华东","华北","西北","西南"]},...{"date": "2017年","date_sugar_origin": 2017,"date_sugar_date_type": "YEAR","x2": ["东北","中南"]}]}
}

2.1 个日期维度,1 个非日期维度,1 个指标

response:


{"status": 0, // 0表示成功,非0表示失败"msg": "","data": {"date": {"name": "date","alias": "年份" // 日期维度名称},"x2": [{"name": "x2","alias": "地区" // 非日期维度名称}],"y": [{"name": "y","alias": "销售额", // 指标字段名称"unit": "元" // 指标字段单位}],"data": [{"date": "2013年","x2": ["东北", "中南", "华东", "华北", "西北", "西南"],"y": [9322, 9050, 1579, 7942, 5072, 8310]},{"date": "2014年","x2": ["东北","中南","华东","华北","西北","西南"],"y": [6513, 1731, 8109, 2547, 6470, 699]},...]}
}

3. 1 个日期维度,1-3 个指标

response:


{"status": 0, // 0表示成功,非0表示失败"msg": "","data": {{"date": { // 日期维度描述"name": "date","alias": "发货日期"},"x2": [], // 非日期维度描述"y": [ // 指标度量描述{"name": "y","alias": "数量","unit": "个", // 单位"dataFormat": "" // 格式化},{"name": "y","alias": "销售额","unit": "", // 单位"dataFormat": "percent" // 格式化},{"name": "y","alias": "成本","unit": "", // 单位"dataFormat": "" // 格式化}],"data": [{"date": "2013年","y": [598,293175,256095]},...{"date": "2017年","y": [19,16584,8950]}]}}
}

旭日图

API 示例:/openapi/demo/chart?type=sunburst

response:


{"status": 0,"msg": "",// data是一个数组,表示了一个树状结构"data": [{// 每个节点必须有name属性,其值为字符串"name": "Fruity",// 非叶子节点必须有children字段,其值为包含其子节点的数组,不需要有value字段"children": [{"name": "Berry","children": [{"name": "Blackberry",// 叶子节点必须有value字段,其值为数字"value": 1,},{"name": "Raspberry","value": 1,}]}]},{"name": "Sour/
Fermented","children": [{"name": "Sour","children": [{"name": "Sour Aromatics","value": 1,},{"name": "Acetic Acid","value": 1,}]}]},......]
}

矩形树图

API 示例:/openapi/demo/chart?type=treemap

response:


{"status": 0,"msg": "",// data是一个数组,表示了一个树状结构"data": [{// 每个节点必须有name属性,其值为字符串"name": "Fruity",// 非叶子节点必须有children字段,其值为包含其子节点的数组,不需要有value字段"children": [{"name": "Berry","children": [{"name": "Blackberry",// 叶子节点必须有value字段,其值为数字"value": 1,},{"name": "Raspberry","value": 1,}]}]},{"name": "Sour/Fermented","children": [{"name": "Sour","children": [{"name": "Sour Aromatics","value": 1,},{"name": "Acetic Acid","value": 1,}]}]},......]
}

气泡图

API 示例:/openapi/demo/chart?type=bubble

response:


{"status": 0,  // 0表示成功,非0表示失败"msg": "",    // 失败时的提示信息"data": [{"name": "热词1","value": 46,"cat": "cat1",            // 气泡所属的类别,不同类别的气泡颜色不同,若不传,则用name作为气泡名称"url": "www.baidu.com" // 这个字段供超链接类型的下钻使用,在配置下钻时的「绑定超链接的数据字段」处填写url即可},{"name": "热词2","value": 32,"cat": "cat1","url": "www.baidu.com"},{"name": "热词3","value": 16,"cat": "cat2","url": "www.baidu.com"},{"name": "热词4","value": 15,"cat": "cat2","url": "www.baidu.com"},......]
}

拓扑图

API 示例:/openapi/demo/chart?type=topology

response:


{"status": 0,"msg": "","data": {"nodes": [ //表示各个节点{"id": "node1",  //结点的id, 用于唯一标识1个节点,必传"title": "node1Title", //节点的标题,可不填,"data": [       //节点主体的数据,可用数组表示,数组每一项会分行。"hello","<button>world</button>"],  //data数据也可不填,但title和data最好保留至少1个, 当然数据也可以写为html的内容"tooltip": "hi, 我是tooltip" //字符串格式的tooltip},{"id": "node2",  //结点的id, 用于唯一标识1个节点,必传"title": "node2Title", //节点的标题,可不填"data": "hello, world", //data字段为字符串表示只占1行数据"fontColor": "#ff0000", //自定义的字体颜色,可不传"bgColor": "bgColor", //自定义的背景颜色,可不传"tooltip": ["hi", "我是tooltip"] //数组格式的tooltip},...],"links": [{"source": "node1",  // 表示从id为`node1`的结点出发,必传"target": "node2",  // 表示到id为`node2`的结点结束,必传"text": "15%",      // 折线上的数据,可不传"tooltip": ["hi", "我是tooltip"] //数组格式的tooltip},{"source": "node1",  // 表示从id为`node1`的结点出发,必传"target": "node3",  // 表示到id为`node3`的结点结束,必传"text": "15%",      // 折线上的数据,可不传"tooltip": "hi, 我是tooltip" //字符串格式的tooltip},...]}
}

河流图

API 示例:/openapi/demo/chart?type=river

response:


{"status": 0,"msg": "","data": {// legend 字段必填,代表一共有几个系列"legend": ["华为", "联想", "微星", "宏基", "戴尔", "惠普"],// data 字段是一个二维数组,每个子数组必须有三项:// 0:用于横轴的序列。以 - 或 / 分隔的日期,以 : 分隔的时间,符合前面格式要求的日期时间组合,数字// 1:数据的大小。数字或有效的数字字符串// 2:数据属于哪个系列,需要与 legend 中的字段对应"data": [["2015/11/08",10,"华为"],["2015/11/09",15,"华为"],["2015/11/10",35,"华为"],["2015/11/08",35,"联想"],["2015/11/09",36,"联想"],["2015/11/10",37,"联想"],["2015/11/08",21,"微星"],["2015/11/09",25,"微星"],["2015/11/10",27,"微星"],["2015/11/08",10,"宏基"],["2015/11/09",15,"宏基"],["2015/11/10",35,"宏基"],["2015/11/08",10,"戴尔"],["2015/11/09",15,"戴尔"],["2015/11/10",35,"戴尔"],["2015/11/08",10,"惠普"],["2015/11/09",15,"惠普"],["2015/11/10",35,"惠普"].....]}
}

日历热力图

API 示例:/openapi/demo/chart?type=calHmap

response:


{"status": 0,"msg": "","data": [// 每一项都是一个数组,代表某天的数据,数据可以不按日期顺序返回// 第一个元素是日期,格式要求yyyy-mm-dd// 第二个元素是取值,要求是数字或有效的数字字符串["2020-02-10", 186],["2020-02-10", 877],......]
}

Sugar BI支持免费试用,欢迎大家前来体验

相关文章:

可视化图表API格式要求有哪些?Sugar BI详细代码示例(2)

Sugar BI中的每个图表可以对应一个数据 API&#xff0c;用户浏览报表时&#xff0c;选定一定的过滤条件&#xff0c;点击「查询」按钮将会通过 API 拉取相应的数据&#xff1b;前面说过&#xff0c;为了确保用户数据的安全性&#xff0c;Sugar BI上的所有数据请求都在Sugar BI的…...

153. 寻找旋转排序数组中的最小值

已知一个长度为 n 的数组&#xff0c;预先按照升序排列&#xff0c;经由 1 到 n 次 旋转 后&#xff0c;得到输入数组。例如&#xff0c;原数组 nums [0,1,2,4,5,6,7] 在变化后可能得到&#xff1a; 若旋转 4 次&#xff0c;则可以得到 [4,5,6,7,0,1,2] 若旋转 7 次&#xff0…...

Linux 文件描述符

Linux 文件描述符 Linux 中一切皆文件&#xff0c;比如 C 源文件、视频文件、Shell脚本、可执行文件等&#xff0c;就连键盘、显示器、鼠标等硬件设备也都是文件。 一个 Linux 进程可以打开成百上千个文件&#xff0c;为了表示和区分已经打开的文件&#xff0c;Linux 会给每个…...

第17章_反射机制

第17章_反射机制 讲师&#xff1a;尚硅谷-宋红康&#xff08;江湖人称&#xff1a;康师傅&#xff09; 官网&#xff1a;http://www.atguigu.com 本章专题与脉络 1. 反射(Reflection)的概念 1.1 反射的出现背景 Java程序中&#xff0c;所有的对象都有两种类型&#xff1a;编…...

使用VBA小程序提高资产清查效率

资产清查是一件相当烦人的工作&#xff0c;去年使用LayUIPHPMS SQL Server 2014写了一个资产清查的程序&#xff0c;可惜写完了&#xff0c;LayUI已经停止更新了&#xff0c;就没有再完善下去&#xff0c;数据也没有更新&#xff0c;等于就废了。 今年又要进行资产清查&#xf…...

JavaSE学习进阶day07_02 异常

第三章 异常 3.1 异常概念 异常&#xff0c;就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是&#xff1a; 异常 &#xff1a;指的是程序在执行过程中&#xff0c;出现的非正常的情况&#xff0…...

操作系统学习笔记

文章目录 操作系统虚拟内存锁缓存机制CPU性能指标进程、线程文件管理系统 操作系统 操作系统是控制应用程序的执行&#xff0c;并充当应用程序和计算机硬件之间的接口。在计算机系统中&#xff0c;处于最外层的是&#xff08;应用软件&#xff09; 。 面向用户的就是外层的&am…...

【Spring Boot】SpringBoot设计了哪些可拓展的机制?

文章目录 前言SpringBoot核心源码拓展Initializer拓展监听器ApplicationListenerBeanFactory的后置处理器 & Bean的后置处理器AOP其他的拓展点 前言 当我们引入注册中心的依赖&#xff0c;比如nacos的时候&#xff0c;当我们启动springboot&#xff0c;这个服务就会根据配置…...

《程序员面试金典(第6版)》面试题 10.10. 数字流的秩

题目描述 假设你正在读取一串整数。每隔一段时间&#xff0c;你希望能找出数字 x 的秩(小于或等于 x 的值的个数)。请实现数据结构和算法来支持这些操作&#xff0c;也就是说&#xff1a; 实现 track(int x) 方法&#xff0c;每读入一个数字都会调用该方法&#xff1b; 实现 g…...

智能洗地机好用吗?值得入手的洗地机推荐

洗地机是一款高效的地面清洁设备&#xff0c;不仅可以很好清理地面不同形态的干湿垃圾&#xff0c;还减少了人工和水资源的浪费&#xff0c;是我们日常生活中必不可少的清洁工具。作为以一位评测博主&#xff0c;很多朋友咨询我在选购洗地机时应该注意哪些要点&#xff0c;有哪…...

Spring Security实战(一)——基于内存和数据库模型的认证与授权

目录 简介 一、初识Spring Security&#xff08;入门案例&#xff09; &#xff08;1&#xff09;新建project &#xff08;2&#xff09;选择依赖 &#xff08;3&#xff09;编写一个 HelloController &#xff08;4&#xff09;启动项目&#xff0c;访问localhost:8080…...

轻松掌握FFmpeg编程:从架构到实践

轻松掌握FFmpeg编程&#xff1a;从架构到实践 (Master FFmpeg Programming with Ease: From Architecture to Practice 引言 (Introduction)FFmpeg简介与应用场景 (Brief Introduction and Application Scenarios of FFmpeg)为什么选择FFmpeg进行音视频处理 (Why Choose FFmpeg…...

桌面应用程序开发攻略(初步了解)

什么是桌面应用程序&#xff1f; 桌面应用开发是指为桌面计算机或其他类似设备&#xff08;如服务器&#xff09;开发软件应用程序的过程。桌面应用通常是独立于浏览器运行的&#xff0c;并且可以在操作系统的桌面或应用程序菜单中找到。桌面应用可以使用各种编程语言开发&…...

【李老师云计算】HBase+Zookeeper部署及Maven访问(HBase集群实验)

索引 前言1. Zookeeper1.1 主机下载Zookeeper安装包1.2 主机解压Zookeeper1.3 ★解决解压后文件缺失1.4 主机配置Zookeeper文件1.4.1 配置zoo_sample.cfg文件1.4.2 配置/data/myid文件 1.5 主机传输Zookeeper文件到从机1.6 从机修改Zookeeper文件1.6.1 修改zoo.cfg文件1.6.2 修…...

第11章_常用类和基础API

第11章_常用类和基础API 讲师&#xff1a;尚硅谷-宋红康&#xff08;江湖人称&#xff1a;康师傅&#xff09; 官网&#xff1a;http://www.atguigu.com 本章专题与脉络 1. 字符串相关类之不可变字符序列&#xff1a;String 1.1 String的特性 java.lang.String 类代表字符串…...

Java语言数据类型与c语言数据类型的不同

目录 一、c语言数据类型 1.基本类型&#xff1a; 2.枚举类型&#xff1a; 3.空类型&#xff1a; 4.派生类型&#xff1a; 二、C语言编程需要注意的64位和32机器的区别 三、 不同之处 一、c语言数据类型 首先&#xff0c;先来整体介绍一下C语言的数据类型分类。 1.基…...

C# Replace()、Trim()、Split()、Substring()、IndexOf() 、 LastIndexOf()函数

目录 一、Replace() 二、Trim() 三、Split() 四、Substring() 五、IndexOf() 六、LastIndexOf() 一、Replace() 在C#中&#xff0c;Replace()是一个字符串方法&#xff0c;用于将指定的字符或子字符串替换为另一个字符或字符串。下面是一些Replace()方法的常见用法和示例…...

C++类的理解与类型名,类的成员,两种定义方式,类的访问限定符,成员访问,作用域与实例化对象

面向过程和面向对象初步认识 C语言是面向过程的&#xff0c;关注的是过程&#xff0c;分析出求解问题的步骤&#xff0c;通过函数调用逐步解决问题 C是基于面向对象的&#xff0c;关注的是对象&#xff0c;将一件事情拆分成不同的对象&#xff0c;靠对象之间的交互完成 面向…...

【华为OD机试真题 C++】1051 - 处理器问题 | 机试题+算法思路+考点+代码解析

文章目录 一、题目&#x1f538;题目描述&#x1f538;输入输出&#x1f538;样例1&#x1f538;样例2 二、题目解析三、代码参考 作者&#xff1a;KJ.JK &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &…...

Linux 常用操作命令大全

一、基础知识 1.1 Linux系统的文件结构 /bin 二进制文件&#xff0c;系统常规命令 /boot 系统启动分区&#xff0c;系统启动时读取的文件 /dev 设备文件 /etc 大多数配置文件 /home 普通用户的家目录 /lib 32位函数库 /lib64 64位库 /media 手动临时挂载点 /mnt 手动临时挂载点…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;百货中心供应链管理系统被用户普遍使用&#xff0c;为方…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

MySQL账号权限管理指南:安全创建账户与精细授权技巧

在MySQL数据库管理中&#xff0c;合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号&#xff1f; 最小权限原则&#xf…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...