【2】tableau绘制图形-条形图、堆积图、直方图、折线图、饼图、环形图

本文介绍了数据可视化的多种图表类型,包括条形图、堆积图、直方图、数据前处理、折线图、饼图和环形图的创建步骤。通过实例展示了如何在图表中显示数值、设置数据桶、调整格式以及实现双轴显示。同时,讲解了数据拆分、格式转换等预处理操作,帮助理解不同图表在数据分析中的应用。

1.条形图

以各地区酒店价格均值为例
拖入行和列以后,价格要选择度量里的平均值。
在这里插入图片描述
如果想要在条形图上显示数值,将价格拖入到标签中,并选择度量为平均值:
在这里插入图片描述

2.堆积图

举例我们要画价格等级的堆积图:把价格等级拖入到标记中的颜色,
在这里插入图片描述

3.直方图

直方图只可竖直,不可水平,直方图表现的是数据的分布,条形图表现的是大小的对比。
直方图的作用是让我们更直观的对评分类的数据进行观察:
比如我们分析酒店的评分:
首先我们要对要观察的指标创建数据桶,这里对评分创建数据桶:
在这里插入图片描述
图中的数据桶的大小就是我们生成图中的区间大小,这个可以根据自己需要修改:

在这里插入图片描述将数据桶拖入列,只能拖入列,

在这里插入图片描述修改底下区间:右键点击→修改别名→即可修改为区间

在这里插入图片描述

4.数据前处理

4.1 数据拆分

右键点击拆分:
在这里插入图片描述将拆分出来的中文改成我们相用的电影名称,日期和英文名称可以删除。

4.2 数据格式转换

右击Abc部分,选择格式,对于时间类型的设置为日期格式

在这里插入图片描述

5.折线图

比如现在要看电影票房随时间变化的折线图,把票房的数值类型变为数值。
接下来设置票房显示数据的格式:右击票房→设置格式
在这里插入图片描述默认值中 选择“数字”→数字自定义→可以修改小数位数和单位

5.1 双轴

假设要观察2015年的电影总数变化和电影票房变化:
首先将2015年筛选出来:
在这里插入图片描述右键点击 按月显示:
在这里插入图片描述将票房拖入行中,右键→维度→总和
在这里插入图片描述点击下面的标题右键,设置双轴显示:
在这里插入图片描述效果如图:

在这里插入图片描述

6.饼图

以酒店数据为例,分析价格等级的占比
将价格等级拖入颜色中,将计数拖入标签中,并将自动修改为饼图:
在这里插入图片描述设置展示为百分比:
在这里插入图片描述

7.环形图

将数据拖到合适位置:
在这里插入图片描述在维度中新创建一个计算字段 ,值为1
在这里插入图片描述
在这里插入图片描述把1拖到行值上 重合
在这里插入图片描述右键选择维度
在这里插入图片描述调整其中一个的大小
在这里插入图片描述将小的饼图对应的颜色价格标签移除
在这里插入图片描述
调整中心颜色为白色
在大的饼图中设置好百分比以后
效果如图:
在这里插入图片描述

### C语言 `scanf` 函数使用教程 #### 什么是 `scanf`? `scanf` 是 C 语言标准库中的一个重要输入函数,用于从标准输入设备(通常是键盘)读取数据并将其存储到指定变量中。它的功能强大,支持多种数据类型的输入以及格式化控制[^2]。 --- #### 基本语法 以下是 `scanf` 的基本语法: ```c int scanf(const char *format, ...); ``` - **参数说明**: - `const char *format`: 表示输入的格式字符串,定义如何解析输入的数据。 - `...`: 可变参数列表,表示要接收输入的具体变量地址(通过指针传递)。 - **返回值**:成功时返回成功匹配和赋值的项目数;如果到达文件结束符或者发生读取错误,则返回 EOF。 --- #### 格式化字符 `scanf` 支持多种格式化字符来处理不同类型的输入数据: | 格式化字符 | 描述 | |------------|--------------------------| | `%d` | 输入十进制整型 | | `%f` | 输入浮点型 | | `%c` | 输入单个字符 | | `%s` | 输入字符串 | | `%lf` | 输入双精度浮点型 | 更多高级选项可以参考具体文档或扩展资料[^1]。 --- #### 示例代码 ##### 示例 1: 整数输入 以下是一个简单的例子,演示如何使用 `scanf` 来获取用户的年龄输入: ```c #include <stdio.h> int main() { int age; printf("请输入您的年龄:"); scanf("%d", &age); // 注意需要传入变量的地址 printf("您输入的年龄是:%d\n", age); return 0; } ``` ##### 示例 2: 浮点数输入 下面的例子展示了如何接受用户输入的一个浮点数值: ```c #include <stdio.h> int main() { float salary; printf("请输入您的月薪:"); scanf("%f", &salary); printf("您输入的月薪是:%.2f\n", salary); return 0; } ``` ##### 示例 3: 字符串与多个变量混合输入 此示例展示了一个更复杂的场景——同时输入姓名、年龄和薪水: ```c #include <stdio.h> int main() { char name[50]; int age; float salary; printf("请输入您的名字、年龄和月薪 (用空格分隔):"); scanf("%s %d %f", name, &age, &salary); printf("您好,%s! 您今年%d岁, 薪水为%.2f。\n", name, age, salary); return 0; } ``` --- #### 注意事项 尽管 `scanf` 功能强大,但在实际编程过程中需要注意一些常见陷阱: 1. **缓冲区溢出**: 如果输入超出预期长度,可能会导致程序崩溃或未定义行为。例如,在输入字符串时应限制最大长度,如 `%49s`。 2. **多余空白字符的影响**: 当前一个输入项留有回车或其他空白字符时,可能会影响后续输入操作。可以通过在格式字符串开头加空格解决这个问题。 修改后的格式字符串如下所示: ```c scanf(" %c", &ch); // 加上前置空格忽略多余的空白字符 ``` 3. **不一致的类型匹配**: 提供给 `scanf` 的参数类型必须与其对应的格式化描述相匹配,否则可能导致不可预测的行为。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

做自己的偶像

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值