分类目录归档:数据集

SMARTCHART数据集之外部数据API


SmartChart 数据集获取数据的方式可以使用SQL查询数据库, 可以直接从EXCEL贴入数据, 可以读取Redis, 可以使用Pandas处理文件数据, 这在应用中还不足够

我们当然也支持对接外部API取数, 注意返回一定要是JSON格式

最简单的方式, 你可以直接在数据集编辑中写入url即可, 默认会将此url替换前端的查询
https://www.smartchart.cn/smartdata/api/?i=loaddataset1&j=1

但这种方法有一定的缺点:

  1. 只支持GET方法
  2. API完全暴露, 无权限控制
  3. 没有缓存功能, 当API未做优化处理时, 速度慢
  4. 可...

Read more

SmartChart数据集之Pandas


SmartChart数据集可以使用Pandas来做数据处理,完全兼容Pandas语法

ds变量名是最终的数据集, 你需要产出它即可

内置函数
#读取数据集
ds_df(id,para_dict=None,cachestr=None,columns=None)
df=ds_df(359)  #获取ID为359这个数据集的数据并转化为pandas的dataframe(df)
df=mysmart.pddf(359,columns=['C1','C2','D1']) #可指定标题名称

#读取excel
import pandas as pd
d...

Read more

SmartChart的Redis数据源


你可能会有这样的一些需求, 展示数据是要通过外部的程序计算好,如一些实时的计算场景,用spark计算好的数据 或爬虫爬取的数据, 然后写入redis或nosql的数据库,最后由前端图形直接展示或数据下载

SmartChart支持这一块的应用

你可以创建一个redis的连接池, 然后按照通用的方法建立数据集 不同的是, 数据集的SQL区不再是写sql代码, 而只需要写redis中的keyname

如redis中存储的数据是keyname 为 "指标A", 数据 '{"长沙":1,"上海":2}' 这样我们只需要在数据集中写上 指标A 即可, 最后你会得到{"长沙":1,"上海":2}的...

Read more

SmartData数据接口


SmartData借助SmartChart的数据集功能, 可以非常方便的实现数据对外微服务

  • 在"大数据接口" ---> "API设定" 中添加 visitor 和 Token
  • 新建 "数据集" 并授权给 API设定中的 visitor, 这样就完成了
  • 注意: post请求时会缓存数据, 所以请设定一个合理的缓存时间

接口请求方式

GET 请求
#接口请求格式: 
url: /echart/dataset_api/?visitor=xxx&token=xxx&type=xxx 数据集名或id名
#接口返回格式
Json: 
{
"data":[...

Read more

SMARTCHART共用数据


经常会这样的一些需求, 比如一个数据集可能不足以完成一个图形, 这些数据有可能来源不同的系统, 有可能是因为结构不一样, 不合适进行sql拼接, 还有可能这个数据集需要同时应用不同的图形.

其实我们只要灵活应用下smartchart就可以实现了. 首先, 将你的数据集名称命名为"common.xxxxx", 即为通用数据集, 通用数据集的图形中只需写为:

data__name__ = __dataset__;

如下图: 注意图形所在的序号, 后续在其它图形中的引用就是data序号, 这个就是data0. 另外"DIV格式"留空, 这样就是一个纯净的数据集了. 由于公用的数据集需要提前加载...

Read more

SMARTCHART数据集


数据集你可以想象为一个EXCEL的二维表, 有行和列, smartchart开发请参考通用的数据集设计

之前写的数据集说明不够生动, 好些童鞋看不明白, 再补充一些: 其实我们用到的数据源类型分为两种

#######  A 类数据源 ##########
比如你的原始数据库的格式是, 表名tb_name:
城市    户型    数量
长沙    A       12
长沙    A       23
上海    B       19

查询的sql: select 城市,户型,sum(数量) AS 数量 from tb_name group by 城市,户型
正常的查询的结果为:
[[...

Read more