tableau
四种基本类型
String 用单引号括起来。
'hello,world' ,字符串有单引号怎么办,单引号两次 'hello''world'
Boolean
TRUE/FALSE
Number
整形或者浮点型,不区分
Datetime/Date
强制将字符串识别为日期,前面加#
'#3 March 2019'
#2010/10/22#
文件类型。
twb
不包含数据源。包含每个工作表和仪表盘
twbx
包含数据源
数据源相关
连接数据源
excel
数据库
数据连接方式
实时:电脑的开销比较大
数据提取
多表连接/左连接/又连接/内连接
手动关键字连接
数据混合
应用场景:一个数据源是mysql一个数据源是excel
关键操作是: 连接--添加
数据提取
应用场景:数据源的数据很多,有些数据用不到,不需要放到tableau中。
关键操作:添加表的时候,右上角有个筛选器可以实现。
工作表
元数据
重命名/别名/隐藏字段...
字段操作
1) 组合字段
操作:选中两个字段,右键--创建--合并字段
应用场景:有助于更好的组织维度和度量,以及容纳具有相同名称的两个或更多
个字段以用于更好的数据分析。
2) 分层字段
创建方式:1) 右键--分层结构--创建分层结构
2) 拖动维度到两一个维度上,自动创建分层结构字段
date类型 自动为分层字段。
应用场景:在某些情况下,需要对几个变量创建一个分层结构,以便在制图或
数据分析时随时向下钻取数据。比如类别--子类--产品名称
3) 字段分组
分类 1) 按文件夹分组
2) 按数据源分组 默认方式
应用场景:当字段特别多的时候,更好的管理字段,就是创建一个文件夹,将相关的
字段放在一起。
操作:右键--创建文件夹
4) 字段拆分
应用场景:tableau读取到源数据后,某些需求的存在,(比如拆分描述性值的字段) 需要对某些字段进行拆分。当然,本质上
也可以将这一步放在数据清洗整理的时候。但有的时候,源数据我们无法触及,只能在tableau中进行操作。
操作:数据源--相关字段下三角--拆分/自定义拆分。这个无法通过元数组字段完成。
5) 计算字段
公式:逐行计算
操作:右键--创建--计算字段
6) 集
定义:集是根据某些条件定义数据子集的自定义字段。集可基于计算条件建立。例如:
集中可包含销售额超过特定阈值的客户。计算集随数据变化而更新。此外,集也可以基于视图中的
特定数据点建立。你可以使用集来比较数据子集以及提出有关数据子集的问题。
应用1:问题格式:计算集成员对总额的贡献程度如何?
比如:销售额大于5000的购物者人数占总购物者的百分比?
步骤:1) 在购物者字段 右键--创建--集。 名称/常规/条件 需要根据具体业务修改。
2) 创建某些条件的集后,集单独占一类。集将源数据分为内/外两类,即符合集条件的为内,不符合的为外。
将实际销售额拖进去,这个时候实际销售额是显示的数值。如果想看内/外所占百分比,实际销售额,下三角--快速表计算--总额百分比。
这个时候可能柱状图的顶端没有值显示,点 标记--标签,在显示标记标签的前面打上对号,实际所占的百分比值就能显示了。
将实际销售额的拖到 标记--标签是不可行的。显示的是销售额的数据,而不是百分比。
集只能处理两类吗?内和外。 集以我现在的理解就是按照某个字段(字段1)作为去重依据,然后将符合其它字段条件(字段2们)的圈出来,
根据字段2们,把字段1分为两类。
应用2:
集的另一个常见用法是比较数据子集或成批数据。例如,你可能想知道有多少客户在去年和今年
购买过产品,或者,如果客户购买过特定产品,他们是否购买过其他产品? 你可以通过创建多个集并将其合并在
一起来回答这些类型的问题。
步骤1) 维度 度量可以相互转换,一种方式就是拖到行/列中,通过下三角的方式。 客户名称由维度改成 度量(计数不同)
2) 添加筛选器,这各例子将购买日期拖到筛选器,筛选年份。
3) 创建不同的集后,选择两个集,右键--创建合并集。
函数与计算
一 tableau中的运算符
1 常规运算符
+ -
2 算术运算符
* / % ^
3 比较运算符
= != > >= < <=
4 逻辑运算符
AND OR NOT
二 tableau函数
任何数据分析都涉及大量的计算,在tableau中,计算编辑器用于将计算应用于正在分析
的字段,tableau具有许多内置函数,它们有助于创建复杂计算的表达式。
1 数字函数
CEILING/FLOOR/ROUND/POWER...
2 字符串函数
LEN/LTRIM/RTRIM/TRIM/REPLACE/UPPER/FIND/ENDSWITH/STARTSWITH/LEFT/RIGHT/SPACE/SPLIT...
3 日期函数
date_part参数,很重要的一个参数,大部分函数都要指定
DATEADD
DATEDIFF
DATENAME
DATAPART(比DATENAME常用)
DAY 实际就是DATEPART('day')
MONTH
YEAR
ISDATE
MAKEDATE
MAKETIME
MAKEDATETIME
NOW
TODAY
4 逻辑函数
ISDATE
ISNULL
IFNULL(expr1,expr2) 如果expr1的值不为null,就取expr1的值。如果expr1的值为null,就取expr2的值。相当于
多加了一层保护。
IIF(test,then,else,[unknown]) 类似三元表达式,test可能是某一个字段的条件判断。
应用场景:根据某一字段,添加新的字段值。
IF <expr> THEN <then> ELSE <else> END
IF <expr> THEN <then> [ELSEIF <expr2> THEN <then2>...] [ELSE <else>] END 应用场景:根据某一字段,添加新的字段值。
CASE <expression> WHEN <value1> THEN <return1> WHEN <value2> THEN <return2> ... ELSE <default return> END
CASE 比 IIF 或 IF THEN ELSE 更易于使用。
通常,您使用一个 IF 函数来执行一系列任意测试,并使用 CASE 函数搜索与表达式的匹配值。但 CASE 函数都可以重写为 IF 函数,不过 CASE
函数一般更加简明
5 聚合函数
AVG
COUNT
COUNTD 相当于去重了
MAX
MEDIAN
MIN
SUM
6 类型转换
STR
INT
FLOAT
DATE
DATETIME
DATEPARSE
三 tableau中的计算字段
1 在tableau中创建公式
函数--淡蓝色
字段--橙色
运算符--黑色
参数--紫色
注释--绿色 //
2 tableau数值计算
tableau中的数值计算使用公式编辑器中提供的大量内置函数完成。
计算可以简单的减去两个字段的值或将聚合函数应用于单个字段。例如,利润
聚合 比如 创建一个字段,公式为 AVG(销售额)
相当于数据库的HAVING?
3 tableau字符串计算
Tableau有很多内置的字符串函数,可以用来做字符串操作,比如,比较,连接,替换。
比如:看看包含'安'字的城市的销售情况。
这里用到了筛选器和CONTAINS()函数。CONTAINS([],'xx') 返回TRUE或者FALSE,这个字段的标志就是=T|F,
将这个字段拖到筛选器中,就可以实现这个目标了。
从这里例子中看,筛选器可接收各种各种的条件。相当去数据库的where关键字吧。这里就是接收的依照返回值
进行筛选。
4 tableau日期计算
日期是在大多数数据分析场景中广泛使用的关键字段之一。因此,tableau提供了
大量涉及日期的内置函数。我们可以进行简单的日期操作,例如从日期中添加或减去
天数。我们还可以创建涉及日期的复杂表达式。
例如:了解每种商品的[订单日期]与[发货日期]的时间总间隔。
优先考虑日期函数,DATEDIFF,DAY,YEAR,MOUTH,DATEADD...,尽管+ - 也可以实现,
5 tableau表计算
表计算可以理解为是一种功能更强大的计算字段。
表计算是一种转换,你基于详细级别中的维度将该转换应用于视图中单一度量的值。
对于任何tableau视图,都有一个由视图中的维度确定的虚拟表,此表不会与数据源中的表混淆。
具体来说,虚拟表由'详细信息级别'内的维度来决定,这意味着由tableau工作表中任何以下工作区或
卡上的维度来决定。
差异计算
对于视图中的每个标记,'差异'表计算将计算表中当前值与另一个值的差异。
操作步骤:标记中选中字段,下三角--添加表计算--
其它:编辑格式的几种方法
1) 设置格式(菜单栏)--单元格大小
2) 在绘图区,右键--设置格式--分为标题和工作表
3) 标记中如果文本 是某个字段,下三角--设置格式
...
百分比差异计算
对于视图中的每个标记,'百分比差异'表计算将计算表中当前值与另一个值之间的百分比差异。
应用场景:每年销售额或利润逐月变化的百分比幅度。
百分比计算
对于视图中的每个标记,'百分比'表计算会将值计算为某个其它值的百分比--通常计算为表中钱一个值
的百分比。
应用场景:了解每个年份/季度/月份与上一个月的值的百分比差异
总额百分比计算
对于视图中的每个标记,'总额百分比'表计算会将值计算为当前分区中所有值的百分比。
应用场景:每个月占每年总销售额的百分比。
排名计算
对于视图中的每个标记,'排名'表计算将计算分区中每个值的排名。
应用场景:了解给定年度内每个月在总销售额中从最高销售额到最低销售额的排名情况。
百分位计算
对于视图中的每个标记,'百分位'表计算将在分区中计算每个值的百分位排名。
应用场景:了解给定年度每个月的值(以百分位表示),而不是查看绝对值销量。
感觉将差异化变大了。
只看排名,排名之间的差距看不出来。
汇总计算
对于视图中的每个标记,'汇总'表计算将在分区中以合并方式聚合值。它可以通过合计值,求值
的平均值或者将所有值替换为最低或最高实际值来执行此操作。
汇总不光只有总计,还有平均值,最大值,最小值的汇总。
汇总的理解就是 某个当前月和前面所有月的在某个聚合函数上的对比。
应用场景:了解每年的汇总销售额,将每个月的销售额加到所有前面月份的销售额上。
其它:
分析(菜单栏)--合计--显示列总计/显示行总计/添加所有小计 (在行/列求和后,添加了一行)
PART2
对于'汇总'和'移动'计算表计算,你可以选择转换两次值,以获得你想要的结果--即除了添加主要表计算
之外再添加从属表计算。
应用场景:我更想了解的是本年与下一年同期相比 每个月的年基差异百分比。
操作:编辑表计算--选中 添加辅助计算(只有汇总和移动才有这个选项)。
移动计算
对于视同中的每个标记,'移动计算'表计算(有时称为 滚动计算)会对当前值之前和/或之后指定数目的值
进行聚合(总计值,平均值,最小值,最大值)来确定视图中的标记值。移动计算通常用与平滑短期数据波动,
这样可以查看长期趋势。例如,对于证券数据,市场每天都在波动,很难通过每日的上升和下降把握全局,可以
使用移动计算来定义一系列值通过所选聚合进行汇总。
应用场景:我想了解总销售额在一段时间内的趋势。我想查看每一年每一季季末的平均销售额,而不是
季末那一个月的销售额。
类似pandas的rolling方法吧
注意:有一点和前面的不一样,计算依据选择的是 表(向下,然后横穿)。这个理解后就明白了。
移动计算也有 添加辅助计算,也就是从属表计算。
四 tableau中的快速表计算
是一个单步骤 过程,你可以从列表中选择常用的表计算类型。Tableau会为该计算类型
自动应用最典型的设置。 是表计算的快捷方式。
操作:标记区字段--下三角--快速表计算。
这之后会多出一个选项,计算依据,根据实际情况进行设置。
五 tableau的临时表计算
临时计算是你在处理视图中功能区上的字段时可创建和更新的计算。
临时计算也称为调用类型输入计算或内联计算。
多行临时计算
键入临时计算时,你可以按shift+enter另起一行。但是,临时计算中只有当前行始终可见,因此对于正在
查看或编辑计算并且无法得知计算中包含多行的任何人来说,这可能会造成混淆。
Tableau高级分析
Tableau中的筛选与排序
排序
数据排序是数据分析的一个非常重要的特征。Tableau允许对称为维度的字段的数据进行排序。
分类
手工排序:用于通过以特定方式将它们彼此相邻拖动来重新排列维度字段的顺序。
示例:鼠标点击轴上的排序标记或手动拖动到想要的位置。
计算排序:是使用排序对话框按钮直接应用于轴的排序。
示例:对文本进行排序/对分层结构进行排序。
操作:字段--下三角--排序--选择数据源顺序/字母/字段...,就会把选中的字段排序。
筛选器
任何数据分析和可视化工作都设计使用广泛的数据筛选。Tableau有很多种筛选选项来满足这些需求。有许多内置
函数用于对使用维度和度量的记录应用筛选器。度量的筛选器选项提供数字计算和比较。维度的筛选器选择提供
从列表中选择字符串值或使用自定义值列表。
筛选器操作
创建筛选器
创建度量筛选器
总计/平均值/中位数/计数.. -- 值范围/至少/至多...
创建维度筛选器
基本筛选器
过滤是从结果集中删除某些值或值范围的过程,tableau过滤功能允许使用字段值以及高级
计算或基于上下文的筛选器的两种简单方法。
显示筛选器 就是出现一个可操作可点击的对话框。
过滤器维度
过滤器度量
筛选器日期
上下文筛选器
Tableau中的正常筛选器彼此独立,这意味着每个筛选器从源数据读取所有行,并创建自己的结果。
但是,在某些情况下,我们希望第二个筛选器只处理第一个筛选器返回的记录。因此,在这种情况下,
第二个筛选器称为依赖筛选器,因为它们只处理通过上下文筛选器的数据。
上下文筛选器有两个目的:
1) 提高性能。如果设置了大量筛选器或具有大型数据源,查询可能会很慢。你可以设置一个或多个上下文筛选器
以提升性能
2) 创建从属数字或前N个筛选器。你可以设置上下文筛选器以仅包含感兴趣的数据,然后设置数字或
前N个筛选器。
应用场景:显示家具类产品并且销售额大于1000000元的商品。
说的天花乱坠,就是两个筛选器放在一起。
是普通筛选器中等级最高的筛选器。
讲的不对,后面有时间在看。
条件筛选器--维度
Tableau中的重要过滤选项之一是对已存在的筛选器应用一些条件,这些条件可以非常简单,
例如只找到高于一定数量的销售,或者它可以是基于特定公式的复杂销售。这些条件也可用于
创建范围筛选器。
最灵活的筛选器,即最强大的筛选器。
应用场景:显示某种商品的类别,子类别,销售额。条件为:家具类,只包含'电话','书签'子类别,销售额。条件为:家具类,只包含
并且销售总额大于1000000,利润大于10000。(感觉条件说的是对某个字段筛选后,再添加某种限制)。
操作:筛选器--条件
顶部筛选器--维度
Tebleau筛选器中的Top选项用于限制筛选器的结果集。例如,从一组大量的销售记录,我们只想
要前N个值,就可以使用内置选项应用词筛选器。
应用场景:最好的几个,最差的几个。
依照 总计/平均值... 的前几个,后几个。
操作:筛选器--顶部/底部
通配符筛选器--维度
主要包括:包含,开头为,结尾为,精确匹配四种类型。
Tableau高级分析值参数
参数使可在计算,筛选器和参考线中替换常量值的动态值。
常和 筛选器/计算字段(自定义)/ 结合使用
创建参数
1) 下三角--创建--参数
2) 空白处--创建参数
显示参数控件
编辑参数
在计算中使用参数
应用场景:动态显示利润参考点
在筛选器中使用参数
在参考线中使用参数
分析--参考线拖动到表上
使用参数使视图更具交互性
当你想要增加报表的交互性和灵活性时,或者要试验假设情况时,参数很有用。
假设你不确定要在视图中包含哪些字段,或者哪些布局最适合你的查看者,你可以将
参数合并到视图中,以便让查看者选择他们想要查看数据的方式。
在使用参数时,请考虑以下两个事项,这两个事项是参数十分有用的重要原因:
1 参数需要在计算中使用
2 需要显示参数控件,以便查看者能够与之交互
在开始之前,请决定要使哪些字段具有交互性。
确实可以实现动态效果。
Tableau实例上手图表分析
条形图(柱状图)
适用场景:二维数据集,每个数据点包含两个值x和y,但只有一个维度需要比较,用于显示
一段时间内的数据变化或显示各项之间的比较情况。
优势:柱状图利用条形的长度,反应数据的差异,肉眼对高度差异很明显
劣势:只适用于中小规模的数据集
折线图
适用场景:适合二维的大数据集,还适用多个二维数据集的比较。一般用来表示趋势的变化,
横轴一般为日期字段
优势: 容易反应出数据变化的趋势。
在同一指标下显示两个字段的变化
1 双轴
2 将一个字段拖动图中的另一个字段上,这个更好一些。
相关:分析--预测
饼图
使用场景:显示各项的大小与各项总和的比例。适用简单的占比比例图,在不要求数据精细的情况适用。
优势:明确显示数据的比例
劣势:不会具体的数值,只是整体的占比情况。
散点图
适用场景:显示若干数据系列中各数值之间的关系,类似XY轴,判断两变量之间是否存在某种关联。
散点图适用于三维数据集,但其中只有两维数据时需要比价的。另外,散点图还可以看出极值的分布情况
优势:对于处理极值的分布和数据点的分簇区域(通过设置横纵项的辅助线),散点图都很理想。
如果数据集中包含非常多的点,那么散点图便是最佳图标类型。
劣势:在点状图中显示多个序列看上去非常混乱。
相关:分析--趋势线
想画出趋势线,标记区要有两个维度字段。趋势线的分类-->将字段拖到颜色,即趋势线是按照颜色划分的,
这是最关键的。将另一个相关的字段拖到 形状。另一个字段选择不同,最终的趋势线也是不同的。
文本图
在Tableau中,你通常通过在'行'功能区放置一个维度,并在'列'功能区上放置一个维度来创建文本表(又称
交叉表或数据透视表),然后你通过将一个或多个度量拖到'标记'卡上的'文本'来完成视图。
相关--总额百分比--计算依据(区向下/表向下)
热图
使用热图用颜色比较分类数据。要在Tableau中创建热图,可将一个或多个维度分别放在'列'和'行'功能区上。
然后选择'方形'作为标记类型并将相关度量放在'颜色'功能区上。可通过设置表单元格的大小和形状来增强
这种基本热图。
操作:有点像文本图,将想要看的字段拖到标记--颜色上。
热图在某些情况下还是挺直观的,实际上就是比文本图更直观。 简言之,文本图的可视化。
直方图
直方图是一种显示分布形状的图表,直方图看起来像条形图,但将连续度量的值分组为范围(数据桶)
操作:进一步,可以将另一个维度字段拖到 颜色上,直方图就是区分出来。
甘特图
使用甘特图来显示事件或活动的持续时间。在甘特图中,每个单独的标记(通常是一个条形)显示一段时间。
应用场景:显示下单日期和发货日期之间要经过多少天。
盒型图
盒须图需要 取消 分析(菜单栏)--聚合度量
填充气泡图
使用气泡图可以在一组圆中显示数据。维度定义各个气泡,度量定义各个圆的大小和颜色。
Tableau地图绘制和图像
Tableau支持使用什么数据来构建地图视图
如何在Tableau中自定义你的数据地理编码
构建简单的地图视图
下三角--地理角色--选择相应的
进一步美化地图视图
地图菜单--地图层--样式
根据需求可以在地图层中去掉国家/地区边界等不需要的信息
可以在 标记 中选择 饼图,然后可以将一个度量字段拖到颜色上,相关字段的信息就是以饼图在地图上显示。
在Tableau中创建显示定量值的地图
你可以在Tableau中创建定量值的地图,这些类型的地图称为比例符号地图。
比例符号地图非常适合显示各个位置的定量值。它们可以对每个位置显示一个或两个定量值(大小,颜色)
操作
标记--颜色--编辑颜色--高级--中心 相当于自定义设定,大于中心值的是一个颜色,小于中心值的是一个颜色。
如果地图中的点特别多,非常密集,而且我们只想关注某些方面有问题的数据,怎么办呢,毕竟点的重叠又不是我们控制的?
可以通过设置,比如说ID字段,拖到 标记--详细信息 中,然后排序,依照我们想要的维度/度量来排序。
示例
法国巴黎地铁车站交通量 课程87-88
西雅图,华盛顿中的自行车共享数据 89-93
Tableau高级图表类型
这是一个辅助功能。
参考线,参考区间,参考分布
你可以添加参考线,参考区间,参考分布或盒型图以标记Tableau视图中某个连续轴上的某个特定值,区域或范围。
举例来说,如果你在分析多种产品的月销售额,则可以在平均销售额处标记一条参考线,这样可以将每一种
产品的业绩与平均值进行比较。
参考区间:
通过添加阴影梯度来表示值在手上的分布。分布可通过百分比,百分位,分位数,标准差定义。只有两条线
参考分布:
多条线。
Tableau仪表盘和故事
创建市局可视化项后,可通过多种方式来使用它。仪表盘和故事是分析和呈现数据的出色工具。
仪表盘:是显示在单一位置的多个工作表和支持信息的集合。它便于你同时比较和监视各种数据
故事:是一个包含一系列共同作用以传达信息的工作表或仪表盘。
仪表盘
仪表盘菜单--设置格式--仪表盘阴影
布局容器
调整布局容器
添加工作表
移除布局容器
平铺和浮动仪表盘布局
以平铺方式添加工作表
以浮动方式添加工作表
浮动在某些场景很有用
对浮动对象重新排序
调整浮动对象的大小
仪表盘的动作
筛选动作
可以实现联动的效果。
操作:图标上方--用作筛选器,开始觉得tableau很厉害了。实际上就是
仪表盘--操作--添加操作--筛选器 快捷方式。这个功能还是有点厉害的。联动效果炫酷max。
高亮显示动作
仪表盘--操作--添加操作--突出显示
URL动作
仪表盘--操作--添加操作--URL
故事
在Tableau中,故事是一系列共同作用以传达信息的虚拟化项。你可以创建故事以讲述数据,提供上下文,
演示决策与结果的关系,或者只是创建一个极具吸引力的案例。
故事是一个工作表,因此用于创建,命名和管理工作表和仪表盘的方法也适用于故事。同时,故事还是按
顺序排列的工作表集合。故事中各个单独的工作表称为'故事点'
Tableau仪表盘最佳实践
你的目标是什么?
了解你的目标和受众群体
利用最常查看点
首先看的点一般是左上角。
针对现实世界设计
按最终现显示大小创作
设置成 大小--自由
限制视图数
一般一个仪表盘最多2-3个
要有安全意识
添加交互功能已鼓励探索
显示筛选器
(排序)
启用突出显示
荧光笔
1) 分析--荧光笔
2) 字段下三角--显示荧光笔
效果一般般,弱化了没被选中的那些数据。
节省时间
使用'调到工作表'命令
离开时隐藏工作表
Tableau故事最佳实践
一个好的数据故事可以使数据和事实生动有趣。有关配合使用Tableau故事点功能的最佳
做法一般从以下几个方面着手
1 你的故事的目的是什么
2 数据故事的七种类型
1 随着时间而变化
3 保持简单
4 在仪表盘中使用'适合'
5 计划快速加载时间
项目实战
项目一 教育网站指标评估
项目背景
对某个学校或城市,也可以对多个学校或城市的教育水平进行比较
需求分析
详细设计
原型效果
训练技能点
轴--编辑轴--常规--固定--->指定轴的范围,起始点。
分层结构的好处---> 可以向下钻取,在行/列中操作某些场景下很便捷,体会下
创建参数,参数的恰当使用,搭配自定义字段(函数),可以使图表交互性更强。
原始数据
具体实现
项目总结
项目三 货架图-->施工图可否?