superset用户使用流程手册.docx
《superset用户使用流程手册.docx》由会员分享,可在线阅读,更多相关《superset用户使用流程手册.docx(48页珍藏版)》请在冰豆网上搜索。
superset用户使用流程手册
Superset的功能介绍
1、我们可以通过连接数据库,去对数据库中的单个表进行配置,展示出柱状图,折线图,饼图,气泡图,词汇云,数字,环状层次图,有向图,蛇形图,地图,平行坐标,热力图,箱线图,树状图,热力图,水平图等图,官网上
是不可以操作多个表的,不过我们可以操作视图,也就是说在数据库建好视图,也可以在superset中给表新增一列进行展示。
2、配置好了我们想要的图表之后我们可以把它添加到仪盘表进行展示,还可以去配置缓存,来加速仪盘表的查询,不必要没次都去查询数据库。
3、我们可以查看进行查询表的sql,也可以把查询导出为json,csv文件。
它有自己的sql编辑器,我们可以在里面来编写sql。
一、系统基本使用
在使用本系统前,应该先进行账户的建立操作。
1.1登陆
输入开通的账号、密码点击登录即可。
1.2新建账号
在登陆时可以使用admin进行用户的创建。
先登陆admin用户,点击界面栏目"安全"→"用户列表
"→,点击
按钮
在填写完信息后点击保存(注:
红色*的选项未必填项)即可使用新建账号登陆。
在创建账号时,根据使用账号功能需求选择不同的角色属性,每个账号的用户名不能相同。
二、创建数据源
2.1.1superset连接MySQL
登录到部署superset主机
1.进入superset的Web界面,点击sources下拉选项的Databases,如下图:
2.进入数据库界面,点击“+”按钮进入数据库连接界面,填写正确字段后保存,操作如下:
3.查看已经连接好的数据库
2.1.2添加数据表
Sources->Tables
点击加号(+)新增数据表
Database选择之前创建好的数据源,TableName必须是数据源中对应真实的表名,表中必须包含一个Date或者Timestamp类型的字段
2.1.3数据表查看、编辑
Sources->Tables可看到所有已连接的数据表
可对表结构、数据类型、是否可进行group、filter、count、sum、min、max操作等进行编
辑
2.2数据探索分析与可视化展示
Table定义好维度字段和指标之后,即可针对该表进行数据探索分析与可视化展示,在
Table页面,点击一个表名,即可进入。
List
在分析页面中,可以针对某一个表事先定义的时间字段、维度及指标字段进行数据探索分析,并可以选择相应的图表进行可视化展示。
2.2.1可视化图表类型选择
选择可视化图表类型。
Superset自带的图表类型如上,包括柱状图、饼图、时间序列线图、堆积图、图表、热词图等。
2.2.2数据时间范围选择
选择:
时间所在数据列。
时间粒度,时间跨度
2.2.3维度展示选择、图表可视化选择
Groupby:
x轴统计维度
Metrics:
y轴展示的数据指标(包括指标的SortBy:
排序依据
sum、avg等)
可视化选择
配色
图例
是否堆积/分布
⋯⋯
2.2.4坐标轴编辑
选择X、Y轴数据格式
编辑X、Y轴标签
编辑Y轴边界
2.2.5自定义查询/过滤
自定义SQL语句
where、having语句、内置in/notin过滤器
2.2.6查询可视化保存
将查询结果保存为slice
将slice增加到已有的dashboard/新增dashboard中
2.2.7Dashboard编辑
编辑每个Slice对应的模块,可以自由拖拽位置和大小,并保存整个Dashboard的布局。
2.2.8多表关联查询
在数据表编辑界面,可通过DatabaseExpression,运用SQL语句实现多表关联查询。
3.Superset操作数据库
经过上边的步骤就连接上了数据库,下边就可以进行数据的可视化操作了。
首先点击
SQL测试下拉菜单下的SQL编辑器按钮。
如下图所示:
SQL语句的执行结果如下:
点击Visualize按钮进入数据可视化编辑窗口:
4.superset部分图形使用案例
4.1Distribution–BarChart(分布-条形图)
案例需求:
统计每个state的总人数,总女生人数,总男生人数。
SELECTstateASstate,
sum(num)ASsum__num,
sum(sum_girls)ASsum__sum_girls,
sum(sum_boys)ASsum__sum_boys
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0518:
21:
31'
ANDds<='2017-07-0518:
21:
31'
GROUPBYstate
ORDERBYsum__numDESCLIMIT50000
进入可视化界面,可按需求显示图形:
在图形的右上方有对图形的保存等一些操作:
图表的保存:
查看保存的图表:
3.2TableView–表视图
需求1:
根据name,gender分组,统计总人数。
SQL:
SELECTnameASname,
genderASgender,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0518:
24:
31'
ANDds<='2017-07-0518:
24:
31'
GROUPBYname,
gender
ORDERBYsum__numDESCLIMIT50000
3.3PivotTable–数据透视表
数据透视表(PivotTable)是一种交互式的表,可以进行某些计算,如求和与计数等。
所进行的计算与数据跟数据透视表中的排列有关。
案例需求:
按照name,gender分组,对每个state人数进行统计。
SQL:
SELECTgenderASgender,
stateASstate,
nameASname,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0518:
25:
21'
ANDds<='2017-07-0518:
25:
21'
GROUPBYgender,
state,
name
ORDERBYsum__numDESCLIMIT50000
3.4TimeSeries–LineChart–时序线图
案例需求:
查看每个state人数总数随时间的变化。
SQL:
SELECTstateASstate,
dsAS__timestamp,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
INNERJOIN
(SELECTstateASstate__,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0518:
26:
35'
ANDds<='2017-07-0518:
26:
35'
GROUPBYstate
ORDERBYsum__numDESCLIMIT50)ASanon_1ONstate=state__WHEREds>='1917-07-0518:
26:
35'
ANDds<='2017-07-0518:
26:
35'
GROUPBYstate,
ds
ORDERBYsum__numDESCLIMIT50000
3.5TimeSeries–Stacked–时序面积图
面积图强调数量随时间而变化的程度,也可用于引起人们对总值趋势的注意。
例如,表
示随时间而变化的产生的数据可以绘制在面积图中以强调总数据量。
案例需求:
根据每个state每年的总人数的时序图-叠图。
SQL:
SELECTstateASstate,
dsAS__timestamp,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
INNERJOIN
(SELECTstateASstate__,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0518:
27:
06'
ANDds<='2017-07-0518:
27:
06'
GROUPBYstate
ORDERBYsum__numDESCLIMIT50)ASanon_1ONstate=state__WHEREds>='1917-07-0518:
27:
06'
ANDds<='2017-07-0518:
27:
06'
GROUPBYstate,ds
ORDERBYsum__numDESCLIMIT50000
3.6TimeSeries–BarChart–时序柱形图
案例需求:
比较不同的年份每个state的人数差异的时序柱形图。
SQL:
SELECTstateASstate,
dsAS__timestamp,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
INNERJOIN
(SELECTstateASstate__,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREstateNOTIN('other')
ANDds>='1917-07-0518:
28:
57'
ANDds<='2017-07-0518:
28:
57'
GROUPBYstate
ORDERBYsum__numDESCLIMIT50)ASanon_1ONstate=state__WHEREds>='1917-07-0518:
28:
57'
ANDds<='2017-07-0518:
28:
57'
ANDstateNOTIN('other')
GROUPBYstate,
ds
ORDERBYsum__numDESCLIMIT50000
3.7Distribution–NVD3-PieChart–饼图
案例:
比较每个state的人数占总人数的比例。
SQL:
SELECTstateASstate,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0518:
29:
51'
ANDds<='2017-07-0518:
29:
51'
ANDstateNOTIN('other')
GROUPBYstate
ORDERBYsum__numDESCLIMIT50000
3.8BubbleChart–气泡图
SQL语句:
SELECTcountry_nameAScountry_name,
regionASregion,
SUM(`SP_POP_TOTL`)AS`sum__SP_POP_TOTL`,SUM(`SP_RUR_TOTL_ZS`)AS`sum__SP_RUR_TOTL_ZS`,SUM(`SP_DYN_LE00_IN`)AS`sum__SP_DYN_LE00_IN`
FROMwb_health_population
WHEREyear>=STR_TO_DATE('2011-01-0100:
00:
00','%%Y-%%m-%%d%%H:
%%i:
%%s')
ANDyear<=STR_TO_DATE('2011-01-0200:
00:
00','%%Y-%%m-%%d%%H:
%%i:
%%s')
ANDcountry_codeNOTIN('TCA','MNP','DMA','MHL','MCO','SXM','CYM','TUV','IMY','KNA','ASM','ADO','AMA','PLW')
GROUPBYcountry_name,
region
ORDERBY`sum__SP_POP_TOTL`DESCLIMIT50000
3.9MarKup–标记图
4.10WordClould–文字云
案例需求:
显示所有的name,且看到使用这个名字的人数比重。
SQL语句:
SELECTnameASname,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0517:
39:
23'
ANDds<='2017-07-0517:
39:
23'
GROUPBYname
ORDERBYsum__numDESCLIMIT50000
3.10Sunburst–旭日图
案例需求:
第一层gender,第二层name,统计人数。
SQL:
SELECTgenderASgender,
nameASname,
sum(num)ASsum__num,
sum(num)ASsum__num
FROM
(select*
frombirth_names)ASexpr_qry
WHEREds>='1917-07-0517:
56:
35'
ANDds<='2017-07-0517:
56:
35'
GROUPBYgender,
name
ORDERBYsum__numDESCLIMIT50000
3.11ParallelCoordinates–平行坐标图
平行坐标图为一种数据可视化的方式。
以多个垂直平行的坐标轴表示多个维度,以维度上的刻度表示在该属性上对应值,以颜色区分类别。
每个样本在各个维度上对应一个值,相连而得的一个折线表示该样本。
SQL:
SELECTcountry_nameAScountry_name,
SUM(`SP_POP_TOTL`)AS`sum__SP_POP_TOTL`,
SUM(`SP_RUR_TOTL_ZS`)AS`sum__SP_RUR_TOTL_ZS`,
SUM(`SH_DYN_AIDS`)AS`sum__SH_DYN_AIDS`,
AVG(`NY_GNP_PCAP_CD`)AS`avg__NY_GNP_PCAP_CD`
FROMwb_health_population
WHEREyear>=STR_TO_DATE('2011-01-0100:
00:
00','%%Y-%%m-%%d%%H:
%%i:
%%s')
ANDyear<=STR_TO_DATE('2011-01-0100:
00:
00','%%Y-%%m-%%d%%H:
%%i:
%%s')
GROUPBYcountry_name
ORDERBY`sum__SP_POP_TOTL`DESCLIMIT50000
3.12Boxplot–盒图
盒图(boxplot):
摆弄数据离散度的一种图形。
它对于显示数据的离散的分布情况效果不错。
在软件工程中,Nassi和Shneiderman提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图,也被称为N-S图。
SQL:
SELECTregionASregion,
yearAS__timestamp,
SUM(`SP_POP_TOTL`)AS`sum__SP_POP_TOTL`
FROMwb_health_population
INNERJOIN
(SELECTregionASregion__,
SUM(`SP_POP_TOTL`)AS`sum__SP_POP_TOTL`
FROMwb_health_population
WHEREyear>=STR_TO_DATE('1960-01-0100:
00:
00','%%Y-%%m-%%d%%H:
%%i:
%%s')
ANDyear<=STR_TO_DATE('2017-07-1109:
46:
33','%%Y-%%m-%%d%%H:
%%i:
%%s')
GROUPBYregion
ORDERBY`sum__SP_POP_TOTL`DESCLIMIT25)ASanon_1ONregion=region__
WHEREyear>=STR_TO_DATE('1960-01-0100:
00:
00','%%Y-%%m-%%d%%H:
%%i:
%%s')
ANDyear<=STR_TO_DATE('2017-07-1109:
46:
33','%%Y-%%m-%%d%%H:
%%i:
%%s')
GROUPBYregion,
year
ORDERBY`sum__SP_POP_TOTL`DESCLIMIT50000