本文翻译自 Superset 的官方文档:Toturial - Creating your first dashboard

最新版本的 Superset 界面与功能上与文档中提到的会有些许出入,以实际的为主。本文仅作翻译

入门教程-创建你的第一个看板

本教程的目标用户是那些想要在 Superset 中创建图表与看板的人。我们将会展示如何通过 Superset 去连接到一个新的数据库并且配置这个库中的一张表以用于分析。同时你也能够通过已经添加上来的数据库去探索数据,可以添加可视化的图表到看板中。通过本教程你能有一个端到端(end-to-end)的用户体验。

连接到一个新的数据库

假设你已经有一个配置好的数据库,并且能够通过正在运行 Superset 的环境中进行连接。如果你仅仅是想体验一下 Supertest 和探索一些样本数据,那么你可以加载 PostgreSQL样本数据集 到一个新的数据库中,或者配置我们在这节中将要使用到的 天气样本数据

数据源菜单下,选择数据库选项:

在跳转的结果页面中,选择右上角的绿色“+”号:

你可以在这个页面配置许多高级选项,但对于本教程来说,你只需要配置如下两项就好了:

  1. 给要添加进来的数据库起个名字:

  1. 输入 SQLAlchemy 连接 URI 并且测试连接:

上图展示了连接用于测试的天气数据库的连接。如 URI 下面的文本所示,你可以参考 SQLAlchemy 文档中的 创建新的连接 URI 来连接目标数据库。

点击 测试连接 按钮来确认两端都没问题。如果 Superset 能够成功连接并获得授权,那么你将看到如下弹窗提醒:

此外,你应该能够在页面底部看到 Superset 能够读取到的、你刚添加的数据库中已经创建的表:

如果连接没问题,点击位于页面底部的 保存 按钮来保存这个配置:

添加新表

到此数据库已经配置好了,你需要添加一个将要用于查询的具体的表到 Superset 中。

数据源 按钮下,选择 数据表 选项:

在跳转的结果页中,单击右上角的绿色“+”号按钮:

为了添加新表到 Superset 中你只需要添加少许的几个信息即可:

  • 表名

  • 数据库 下拉列表中选择目标库(例如,你刚才添加上去的一个)

  • 可选的,数据库的 schema。如果数据表是存在于默认的 schema 中(例如 PostgreSQL 或者 Redshift 中的 public),那么该选项可以留空。

单击 保存 按钮来保存配置:

当页面重定向到数据表清单页面后,你应该能看到一条信息提示说你的表已经创建好了:

这条信息同时也告诉你可以编辑表配置。我们当前将仅会编辑一小部分配置-为了能让你开始-同时剩下一些留在高级教程中。

在你刚才创建的表旁边单击编辑按钮:

在结果页中,点击 列列表 标签。在这里,你可以定义一些在探索数据时使用到的具体列。我们将会历遍这些选项去描述它们的作用:

  • 如果你希望用户根据具体的列来进行分组,那么在 可分组 下勾选它
  • 如果你需要根据具体的列来进行过滤,那么在 可过滤 下勾选它
  • 是否有一些字段你需要去统计它的唯一值个数的?勾选 唯一性统计
  • 是否有一些字段你需要去求和的,或者想要得到一些基本的统计信息?那么 求和最小值最大值 列会有帮助
  • 所有的日期或者时间字段,都应该勾选上 表示时间(原文是 is temporal )。我们将会在稍后讲述它们是如何操作的。

(译注:目前我安装上的版本中,只剩下可分组、可过滤、表示时间这三个选项了)

以下是已经针对天气数据配置好的字段。对于天气数据的测量(比如降雨量、降雪量等等)来说,根据以下这些字段它已经足够去分组和过滤的了:

如上图所示,点击 保存 按钮以保存这些配置。

探索数据

要探索数据,只需要在表列表中点击你刚才创建的表的名字即可:

默认地,展现在你面前的是表视图(Table View):

让我们使用一些基本的查询来统计表中的所有记录数。首先,我们需要更改 时间(Since)过滤器来取得数据的时间范围,你可以通过一些简单的词语来应用这个筛选,例如“3年前”:

而这个时间区间的上限,在 Until 过滤器中,默认是 现在,当然这个可能并不是你想要的。

再看到位于 分组 下方的 指标 部分,可以在其中输入 “Count” —— 你会看到一个根据你的输入而匹配出来的指标列表:

选择 COUNT(*) 指标,然后点击位于探索器顶部旁边的绿色按钮:

你将会右侧的表格里看到查询结果:

让我们在 分组 区域中,以 weather_description 字段为分组,取得以天气记录类型为分类的记录数有多少:

执行查询:

让我们查找一个更加有用的数据:在 2015 年有记录的温度最高的时间和地点的 TOP 10。

分组 区域中,把 weather_description 替换为 latitudelongitudemeasurement_date

同时在 指标 区域中,把 COUNT(*) 替换为 *max__measurement_flag*:

*max__measurement_flag* 指标是在我们前面配置表的时候,勾选了 measurement_flag 字段对应的 Max 选框而创建的,指明这个字段是一个数值并且当需要根据指定的字段进行分组的时候我们要在其中查询它的最大值。

在本案例中,measurement_flag 是测量所需要使用到的值,它很明显是依赖于测量的类别的(研究者会记录不同的降雨量和气温的值)。因此,我们必须仅在 weather_description 相等于 “Maximum temperature” 的记录中过滤我们的查询,这个过滤会在探索器窗口底部的 过滤 模块中进行:

最后,由于我们仅关心 top 10,所以我们要限制我们的查询结果为 10 条记录,通过位于 Options 头下方的 行限制 来实现:

点击 查询 然后可以得到如下的结果:

在这个数据集中,最高温度以十分之一摄氏度记录( is recorded in tenths of a degree Celsius)。最大值是 1370,在内华达州中部测量得到的,相当于 137 摄氏度,或约等于 278 华氏度。这个数据可能是错的。我们已经使用 Superset 探查了一些异常值,但这仅仅是冰山一角。

你可以通过这些方法来做许多事情:

  • 默认的显示数值的格式是 1.37k,是不便于人们阅读的。可能你会更加喜欢使用全的、使用逗号分隔的值。通过修改配置(编辑 表配置 > 列出 SQL 指标 > 编辑指标 > D3 格式)你可以更改任何一个指标数据的格式。
  • 此外,可能你想把温度直接以原生的摄氏度来显示,而不是显示它的 10 倍值,又或者你需要把它转换成华氏度来显示。你可以修改针对数据库执行的 SQL 语句,将转换逻辑直接映射到指标本身(编辑 表配置 > 列出 SQL 指标 > 编辑指标 > SQL 表达式)。

现在,让我们为这些数据创建一个更好的可视化图表并且把它添加到看板中。

我们更改图表类型为 “分布-柱状图”:

我们前面设置的对最高温度指标的过滤器可以保留,但是查询语句和格式选项是依赖于图表类型的,因此你必须要再次配置这些值:

你应该注意到了,对于这个图表来说,它有更多的格式化选项:设置轴标签、外边距、刻度等等。为了在更多的受众面前展示图表,你可能会想要应用多个这些图表并且把它们添加到看板中。现在,我们执行查询并且得到如下的图表:

创建切片和看板

这些图可能对于研究者来说是有用的,因此让我们来保存它。在 Superset 中,一个保存好的查询被称为一个 切片(Slice)。

为了创建切片,单击位于探索器左上角的保存按钮:

此时会有一个弹窗出现,要求填写切片的名字,和一个是否要添加到看板的可选项。由于我们还没有创建任务看板,这里我们可以创建一个同时直接添加我们的切片到这个看板中:

点击保存,然后你会被重定向回原来的查询界面。同时可以看到我们的切片和看板都已经成功创建了:

来检查一下我们的新看板。点击 看板 菜单:

找到刚才创建的看板:

一切安好-我们的切片也在这里:

但是它比我们预期的要小一点。幸运的是,你可以调整在看板中的切片。点击它,保持鼠标按下不要放开并且拖动右下角直到你想要的大小:

调整完之后,你会被提示去点击看板左上方的按钮来保存这个新的配置。

恭喜你!你已经成功地在 Superset 中连接、分析并且进行了数据可视化操作。这里面有许许多多的表配置与可视化选项,所以请开始探索与创建你自己的切片和看板吧。

本翻译版权归本人 博客园-东围居士 所有,转载请注明出处

Superset 官方入门教程中文翻译的更多相关文章

  1. Kubernetes tutorial - K8S 官方入门教程 中文翻译

    官方教程,共 6 个小节.每一小节的第一部分是知识讲解,第二部分是在线测试环境的入口. kubectl 的命令手册 原文地址 1 创建集群 1.1 使用 Minikube 创建集群 Kubernete ...

  2. AFNnetworking快速教程,官方入门教程译

    AFNnetworking快速教程,官方入门教程译 分类: IOS2013-12-15 20:29 12489人阅读 评论(5) 收藏 举报 afnetworkingjsonios入门教程快速教程 A ...

  3. Go 语言官方包函数中文翻译

    Go官方包函数中文翻译 *** import "strings" func Join(a []string, sep string) string Join concatenate ...

  4. 官方入门教程和文档 | Visual Studio

    Visual Studio 2017 概述 | Microsoft Docs(直接教你用vs) https://docs.microsoft.com/zh-cn/visualstudio/ide/vi ...

  5. GitHub官方介绍(中文翻译)

    注:本人亲自翻译,转载请注明出处. 官方链接地址 http://guides.github.com/activities/hello-world/ Hello World 项目在计算机编程界是一项历史 ...

  6. SLAM for Dummies SLAM初学者教程 中文翻译 1到4章

    SLAM for Dummies  SLAM初学者教程A Tutorial Approach to Simultaneous Localization and Mapping  一本关于实时定位及绘图 ...

  7. Kubernetes tutorial - K8S 官方入门教程

    tutorials 教程 kubectl 的命令手册 1 Creating a Cluster 1.1 Using Minikube to Create a Cluster Kubernetes Cl ...

  8. 【转】QT Graphics-View官方介绍(中文翻译)

    一.GraphicsView框架简介 QT4.2开始引入了Graphics View框架用来取代QT3中的Canvas模块,并作出了改进,Graphics View框架实现了模型-视图结构的图形管理, ...

  9. [转] Elasticsearch 6.1官方入门教程

    一篇比较简要又全面的elasticsearch教程. https://blog.csdn.net/hololens/article/details/78932628

随机推荐

  1. 【通过ssh oracle11g安装】centos6静默安装oracle11g

    转载链接:https://blog.csdn.net/u011391839/article/details/76566316 根据实际情况略作调整~ 博主参考了以上链接成功进行安装,列一下自己遇到的坑 ...

  2. VS2017 编译 Visual Leak Detector + VLD 使用示例

    起因 一个Qt5+VS2017的工程,需要进行串口操作,在自动时发现一段时间软件崩溃了,没有保存log,在 debug 的时候发现每运行一次应用占据的内存就多一点,后来意识到是内存泄漏了.这个真是头疼 ...

  3. Ubuntu 16.04.3启动MySQL报错

    今天安装mysql,连接MySQL时报错mysql: [Warning] Using a password on the command line interface can be insecure. ...

  4. 用ASP.NET Core重写了一款网络考试培训的免费软件

    在IT圈混迹了近十年,今已正当而立之年却仍一事无成,心中倍感惶恐惭愧.面对竟争如此激列的环境,该如何应对?却也知不能让自已闲着,得转起来,动起来.于是,便想着利用最新技术栈将自已原来的收费产品重写一次 ...

  5. node.js的异步I/O、事件驱动、单线程

    nodejs的特点总共有以下几点 异步I/O(非阻塞I/O) 事件驱动 单线程 擅长I/O密集型,不擅长CPU密集型 高并发 下面是一道很经典的面试题,描述了node的整体运行机制,相信很多人都碰到了 ...

  6. 前端笔记之React(四)生命周期&Virtual DOM和Diff算法&日历组件开发

    一.React生命周期 一个组件从出生到消亡,在各个阶段React提供给我们调用的接口,就是生命周期. 生命周期这个东西,必须有项目,才知道他们干嘛的. 1.1 Mouting阶段[装载过程] 这个阶 ...

  7. 小程序组件-swipe多页切换,并支持下拉刷新,上拉加载,menu动态联动切换

    前言 最近一个小程序项目中遇到一个需求,就是实现类似资讯类app的多页面切换的那种效果, 如下图: 最终效果: 1.功能分析 首先实现这个功能分为三步: 实现顶部menu菜单 实现多页面滑动切换 支持 ...

  8. Notepad++提升工作效率小技巧

    前言 简单的提升工具效率需求可以借助Notepad编辑器实现.以前也用Python/Shell开发过本文中提到的需求,现在发现其实没有必要.本文介绍一些工作中常见的可以通过"Notepad+ ...

  9. HTML认识二

    <!doctype html> <html lang="en"><head> <meta charset="UTF-8" ...

  10. Neo4j电影关系图

    “电影关系图”实例将电影.电影导演.演员之间的复杂网状关系作为蓝本,使用Neo4j创建三者关系的图结构,虽然实例数据规模小但五脏俱全. 步骤: 一. 创建图数据:将电影.导演.演员等图数据导入Neo4 ...