5.4.2《数据可视化表达的工具》粤教版(2019)数据与计算必修1-课后练习(含答案)

资源下载
  1. 二一教育资源

5.4.2《数据可视化表达的工具》粤教版(2019)数据与计算必修1-课后练习(含答案)

资源简介

数据可视化表达的工具 练习题
(粤教版·必修一《数据与计算》)
一、单选题(共15题,每题5分,共75分)
1. 数据可视化是指以图形、图像、地图、动画等生动、易于理解的方式展示数据,其根本目的是(  )
A. 以丰富的视觉效果呈现数据所反映的本质问题,有效提升数据分析的效率
B. 将数据变得更加复杂和难以理解
C. 完全取代传统的数据分析与统计方法
D. 只用于展示科学实验数据,不适用于商业应用
2. 从常用和实用的维度,数据可视化的呈现类型主要分为(  )
A. 图表类和动画类
B. 探索类型和解释类型
C. 静态类和动态类
D. 二维类和三维类
3. 以下工具中,属于Python语言中常用的数据可视化工具库的是(  )
A. Excel
B. Tableau
C. Matplotlib
D. Power BI
4. 下列Python数据可视化工具库中,专门用于绘制中文词云的第三方库是(  )
A. Matplotlib
B. wordcloud
C. Pandas
D. Seaborn
5. 关于数据可视化工具的选择,下列说法正确的是(  )
A. 所有数据可视化需求都只能使用同一种工具
B. 应根据数据类型、分析目标和呈现要求选择最合适的可视化工具
C. Python可视化库的功能比Tableau等商业软件弱很多,无法胜任专业任务
D. 仅需使用Excel即可完成所有的数据可视化分析任务
6. 在使用Python的Matplotlib库绘制图表时,用于显示所绘制的图像窗口的函数是(  )
A. `plt.figure()`
B. `plt.plot()`
C. `plt.show()`
D. `plt.xlabel()`
7. 执行 `plt.scatter(x, y)` 这行Python代码,绘制出来的图表类型是(  )
A. 折线图
B. 垂直柱形图
C. 散点图
D. 饼图
8. 以下关于Matplotlib库的说法,正确的是(  )
A. Matplotlib只能绘制二维图表,不能绘制三维图表
B. Matplotlib是Python内置标准库,无需导入即可使用
C. Matplotlib中的pyplot子库提供了一套类似MATLAB的绘图接口
D. Matplotlib绘制的图表不能保存为图片文件
9. 使用Python引入matplotlib的pyplot子库并设置别名为“plt”的正确方法是(  )
A. `import matplotlib.pyplot as plt`
B. `import matplotlib as pyplot`
C. `import pyplot as plt`
D. `import matplotlib`
10. 在数据可视化中,Tableau是一款(  )
A. 开源的Python数据分析库
B. 企业级的商业智能与数据可视化工具
C. 仅用于处理文本数据的编程语言
D. 专门用于绘制词云图的在线工具
11. 某同学想使用Python绘制校园天气数据的折线图,分析一个月内气温逐日变化趋势。以下操作步骤的顺序正确的是(  )
① 调用`plt.plot()`绘制折线图
② 使用`import matplotlib.pyplot as plt`导入绘图库
③ 调用`plt.show()`显示图像
④ 准备气温数据,存入列表
A. ④③①②
B. ②④①③
C. ④②③①
D. ①②③④
12. 以下关于数据可视化常用工具的说法,不正确的是(  )
A. D3.js是运行在JavaScript上的数据可视化开源工具库,支持创建交互式网页图表
B. Tableau主要用于实时可视化分析,可以连接本地或云端数据
C. Highcharts是一个开源图表库,支持移动端,但只能创作静态图表
D. Matplotlib适用于Python环境下的基础科学绘图与数据探索
13. 某电商公司需要将全国各城市的销售数据在地图上呈现,以直观地展示销售热力分布。以下工具中最适合完成这一任务的是(  )
A. 词云图工具
B. 雷达图工具
C. 数据地图或地理信息可视化工具(如PyEcharts的地图组件、Tableau地图功能等)
D. 饼图工具
14. 关于Seaborn与Matplotlib的关系,下列说法正确的是(  )
A. Seaborn是对Matplotlib的高级封装,提供了更美观的默认样式和更简便的统计可视化接口
B. Seaborn与Matplotlib完全无关,是独立的数据分析工具
C. Seaborn只能绘制一种类型的图表
D. Seaborn无法与NumPy、Pandas等库协同工作
15. 研究人员需要横向对比A、B、C三名学生在“学习态度”“实践能力”“团队协作”“创新思维”等五个维度上的综合表现。最适合的可视化工具或图表类型组合是(  )
A. Python Matplotlib绘制雷达图
B. 绘制饼图
C. 绘制折线图
D. 整理成纯文本数据表
二、填空题(共10题,每题2分,共20分)
1. 数据可视化可以让人们快速抓住__________,让关键的数据点从人们的眼睛快速通往心灵深处。
2. 从常用和实用的维度,数据可视化的呈现类型主要分为__________类型和__________类型。
3. 在Python中,使用`import matplotlib.pyplot as __________`可以为pyplot子库设置简短的别名。
4. Matplotlib库中的__________函数用于绘制折线图;__________函数用于绘制散点图。
5. 使用Matplotlib绘图时,调用__________函数可以将绘制好的图像显示出来。
6. __________是一款运行在JavaScript环境下的数据可视化开源工具库,可以创建实时交互的网页图表。
7. Tableau是一款企业级的__________与数据可视化工具,广泛应用于商业数据分析领域。
8. 在Python中,绘制中文词云图的常用第三方库是__________,使用时通常需要设置中文字体文件路径,否则中文可能显示为乱码。
9. 数据可视化工具的__________性原则是指:所选工具或图表应能真实、准确地反映数据信息,避免误导读者。
10. 在使用Python绘制图表之前,通常需要将数据存入列表或使用__________和Pandas库来读取外部数据文件。
三、情景作答题(共3题)
情景一:综合实践活动报告的可视化工具选择
某校高一年级学生刚刚完成了以“本市共享单车使用现状调查”为主题的综合实践活动。各小组收集了以下数据:
- A: 各年龄段共享单车用户比例(纵向比较:老年人、中年人、青少年等群体)。
- B: 本市各区域共享单车投放数量(需要展示在市区地图上的地理分布)。
- C: 周一到周日单车使用量变化趋势(关注一周内使用情况的变化)。
- D: 不同品牌共享单车的市场占有率对比。
- E: 共享单车用户针对“骑行规范”相关建议的词频统计(文本挖掘)。
问题:
1. 如果选择数据可视化工具,以上A、B、C、D、E分别采用何种可视化呈现方式最为合适?请将(A-E)与下列适当的可视化方式对应连线。(4分,每答对1项给1分)
可视化方式:① 词云图 ② 分组柱状图 ③ 折线图 ④ 饼图 ⑤ 数据地图
2. 针对D组数据(占有率百分比),用饼图和分组柱状图展示有什么不同?在什么情况下更适宜用饼图?在什么情况下更适宜用柱状图来呈现相关信息?(6分)
3. 在完成本项目的过程中,有小组使用Excel生成了图表,另一组尝试使用Python的Matplotlib和wordcloud库制作词云图。这两种工具方法各有何优缺点?请从学习难度、灵活性、适用场景等方面分析。(6分)
情景二:Python数据可视化绘制运动会项目成绩(代码改错)
小明参加校运动会后,准备用Python绘制一份表格数据的可视化图形。数据以嵌套列表的形式提供,代表不同班级、男子/女子不同运动项目的金牌数量。他的意图是绘制一个柱状图显示男子组与女子组在不同项目上的金牌构成比较。
初始代码(有错误)如下:
```python
import matplotlib.pyplot as plt
import numpy as np
projects = ['100米', '200米', '400米', '跳远', '跳高']
boys = [5, 3, 2, 4, 6]
girls = [3, 4, 5, 2, 4]
plt.bar(projects, boys, label='男子组')
plt.bar(projects, girls, label='女子组')
plt.title('运动会各项目金牌分布')
plt.xlabel('运动项目')
plt.ylabel('金牌数')
plt.legend()
plt.show()
```
运行后发现男子组与女子组的柱形条重叠在一起,不便于对比。
请回答:
1. 上述代码的目的是创建什么类型的图表?(4分)
2. 上述绘制图表时男子组与女子组的柱形条相互重叠,是什么原因导致的?应该如何修改以避免重叠?(6分)
3. 班级老师希望将图表保存为“运动会成绩.png”图片文件,以方便共享和入册,应该在plt.show()之前增加什么代码?该代码的作用是什么?(4分)
4. 如果教师希望更清晰地对比男子组和女子组在各项目中的金牌数差异,除了修改图表的绘制方式以外,还可以采用哪种不同的可视化工具(与Matplotlib相比)来完成此可比性图表?简述推荐理由。(4分)
情景三:校园水质监测数据分析与可视化(创新题)
校科技社成员采集了流经学校附近某河流三个监测点的水质样本,获得以下三类数据:
- 监测点pH值:6.4,6.9,7.2
- 溶解氧(DO)浓度(mg/L):6.1,5.8,6.0
- 氨氮浓度(mg/L):0.12,0.21,0.15
社员们希望采用Python绘制不同类型的可视化图形来展示这几个指标状况。
请完成以下任务:
1. 如果要在一张图中对比展示三个监测点的pH值、溶解氧和氨氮浓度数据,可以使用哪两种可视化图表类型来展示多组数据?各有什么特点?(6分)
2. 请写出对应的Python关键代码片段,用分组柱状图实现。假设pH值、DO、氨氮三个指标的数据已分别存入列表pH、DO和NH3N,且三个监测点名称已存入列表stations。(写出图表创建、坐标轴标签、图例以及显示等关键代码即可)(6分)
3. 科技社的指导老师还要求把三个监测点的水质数据与水质标准限值(pH=6.5—8.5,DO≥5,氨氮≤0.5)进行对比,绘制参考线来辅助判断各监测点是否达标。请问如何在分组柱状图中添加参考线(如DO的合格线5)?(4分)
参考答案与解析
一、单选题答案解析
1. A
解析:数据可视化的根本目的是以丰富的视觉效果呈现数据所反映的本质问题,有效提升数据分析的效率,让人们更容易发现数据背后的规律和趋势。
2. B
解析:从常用和实用的维度,数据可视化的呈现类型主要分为探索类型和解释类型。探索类数据可视化可以帮助人们发现数据背后的价值;解释类数据可视化可以把数据简单明了地解释给人们。
3. C
解析:Matplotlib是Python中最基础、应用最广泛的数据可视化库之一。Excel、Tableau、Power BI都是独立软件,不属于Python库。
4. B
解析:wordcloud是专用于生成词云图的Python第三方库。Matplotlib是基础绘图库,Pandas用于数据分析,Seaborn是统计可视化库。
5. B
解析:不同的可视化工具各有优势和适用场景,应根据数据类型、分析目标(探索/解释)和呈现要求选择最合适的工具,不存在一个工具适用于所有场景。A、C、D选项的表述都过于绝对或不正确。
6. C
解析:`plt.show()`函数用于显示绘制的图像窗口。`plt.figure()`用于创建画布,`plt.plot()`用于绘制折线图,`plt.xlabel()`用于设置x轴标签。
7. C
解析:`plt.scatter()`是Matplotlib中专门用于绘制散点图的函数。`plt.plot()`绘制线形图,`plt.bar()`绘制垂直柱形图。
8. C
解析:Matplotlib中的pyplot子库提供了一套类似MATLAB的绘图接口,方便用户快速绘图。Matplotlib也支持三维绘图(需导入mplot3d模块);Matplotlib是第三方库,需要安装和导入;Matplotlib绘制的图表可以通过`plt.savefig()`保存为文件。
9. A
解析:导入matplotlib的pyplot子库并设置别名为plt的规范写法是`import matplotlib.pyplot as plt`。
10. B
解析:Tableau是一款功能强大的商业智能与数据可视化工具,广泛用于企业级数据分析与可视化展示。
11. B
解析:正确的操作步骤是:先导入所需库(②),准备好数据(④),调用绘图函数绘制图表(①),最后调用show()显示图像(③)。
12. C
解析:Highcharts是一个开源图表库,支持移动端,不仅能够创建动态、交互性的图表,还可以在web网站或web应用程序中添加动态图表,因此C项“只能创作静态图表”的说法不正确。
13. C
解析:将销售数据在地图上呈现以展示热力分布,最适合使用数据地图或具有地理信息可视化功能的工具,如PyEcharts的地图组件、Tableau的地图功能等。
14. A
解析:Seaborn是基于Matplotlib的高级统计可视化库,提供了更美观的默认样式和更简便的统计图表绘制接口,可与NumPy和Pandas很好地协同工作。
15. A
解析:雷达图专门用于展示多维度综合指标,适合横向对比A、B、C三名学生在五个维度上的表现。饼图用于比例分析,折线图用于趋势分析,纯文本数据表缺乏直观性。
二、填空题答案解析
1. 要点信息
解析:教材原文,数据可视化可以让人们快速抓住要点信息。
2. 探索;解释
解析:教材明确将数据可视化的呈现类型分为探索类型和解释类型。
3. plt
解析:常见别名为plt,如`import matplotlib.pyplot as plt`。
4. plot;scatter
解析:`plt.plot()`绘制折线图,`plt.scatter()`绘制散点图。
5. plt.show()
解析:`plt.show()`用于显示所绘制的图形窗口。
6. D3.js(或D3)
解析:D3.js是JavaScript环境下著名的数据可视化开源工具库。
7. 商业智能(BI)
解析:Tableau是企业级BI与数据可视化平台。
8. wordcloud
解析:wordcloud是Python中用于生成词云图的第三方库。
9. 真实准确
解析:数据可视化应真实、准确反映数据信息,避免误导。
10. NumPy
解析:在Python中读取数据常用的库包括NumPy和Pandas。
三、情景作答题答案解析
情景一:综合实践活动报告的可视化工具选择
1. A与②: 各年龄段占比比较适合使用分组柱状图。
B与⑤: 区域投放数量需要展示地理分布,最适合数据地图。
C与③: 一周使用量变化趋势适合用折线图展示。
D与④: 市场占有率对比适合使用饼图展示比例关系。
E与①: 建议排序适合用词云图提取高频关键词。
(连线共5项,每项对应正确得1分,满分4分;实际用户只需正确匹配四项。)
2. 饼图与分组柱状图的差异:饼图展示的是各部分占总体的比例,通常用于类别数量较少(如不超过5—6类)的情况,便于直观看出某项占比是否显著。柱状图除了可以比较单个分类在分组中的数值大小外,还可以同时展示具体数值的精确高低和类别间的量差,更直观地比较各类别之间的细微差异。如果占有率差异明显且分类较少用饼图,如果占有率差异细微或分组较多则使用柱状图进行精确比较更为合适。
3. Excel vs. Python可视化方案的优缺点分析:
- Excel优点:操作门槛低,学习上手简单,适合快速生成常规图表。缺点:自动化处理能力弱,无法处理大规模数据或生成复杂统计图形,自定义样式有限。
- Python(Matplotlib/Wordcloud)优点:自动化批量处理能力较强,可生成高度定制化的图表和词云图等复杂可视化图形,适合处理大规模数据集成分析;缺点:需要掌握Python编程知识,学习曲线较陡;词云库的中文字体显示需额外设置。
情景二:Python数据可视化绘制运动会项目成绩(代码改错)
1. 图表类型:它是分组柱状图(也称为簇状柱状图),用来对比不同项目的男女生金牌数量。由于柱形条重叠,目前显示效果差。
2. 重叠原因和改进方法:重叠是因为两个`plt.bar`默认在同一基准位置绘制柱形条。正确做法应调用同一坐标轴但分别指定条柱的偏移量,将条柱并列显示而非重叠。改进方案是增加x轴的偏移位置设置,通过width与偏移量分开两组的柱形条。
示例改进(关键代码):
```python
import matplotlib.pyplot as plt
import numpy as np
projects = ['100米', '200米', '400米', '跳远', '跳高']
boys = [5, 3, 2, 4, 6]
girls = [3, 4, 5, 2, 4]
x = np.arange(len(projects))
width = 0.35
plt.bar(x - width/2, boys, width, label='男子组')
plt.bar(x + width/2, girls, width, label='女子组')
plt.xticks(x, projects)
plt.title('运动会各项目金牌分布')
plt.xlabel('运动项目')
plt.ylabel('金牌数')
plt.legend()
plt.show()
```
3. 保存图片的代码及作用:在`plt.show()`之前增加`plt.savefig(‘运动会成绩.png’ )`,可以将当前所绘图形直接保存为图片文件,方便共享、打印或插入报告,避免每次重新绘图。
4. 替代可视化工具推荐:可以考虑使用Seaborn,它是基于Matplotlib的高级封装库,内置数据统计绘图与分组对比模块。此类任务可使用`seaborn.barplot`进行多变量关系绘制,不仅使其内置样式美观,而且编写代码较为简洁,能快速添加置信区间和误差棒,适合教师在数据筛查分析时进一步挖掘对比差异。
情景三:校园水质监测数据分析与可视化
1. 可选图表类型及特点:两种类型的对比主要包括——
① 分组柱状图:可按三个监测点不同指标进行横向比对,能突出不同监测点之间单个指标值的量差关系,但数据密集时可能略拥挤。
② 多线折线图:以监测点为横坐标,按不同水质指标数值用不同样式线条连接,便于观察多指标整体走向与对应点变化的联动规律,但水质指标量纲可能不一致需要标准化,否则会影响图形视觉,需提前统一量纲。
2. 分组柱状图关键代码:
```python
import matplotlib.pyplot as plt
import numpy as np
stations = ['监测点1', '监测点2', '监测点3']
pH = [6.4, 6.9, 7.2]
DO = [6.1, 5.8, 6.0]
NH3N = [0.12, 0.21, 0.15]
x = np.arange(len(stations))
width = 0.25
plt.bar(x - width, pH, width, label='pH值')
plt.bar(x, DO, width, label='溶解氧 DO')
plt.bar(x + width, NH3N, width, label='氨氮')
plt.xticks(x, stations)
plt.xlabel('监测点')
plt.ylabel('数值')
plt.title('各监测点水质指标对比')
plt.legend()
plt.show()
```
3. 添加参考线的方法:可在坐标轴上使用`plt.axhline(y=合格线值, color='颜色', linestyle='样式', label='参考线标签')`添加合格参考线,便于判断达标情况。例如对DO参考线:`plt.axhline(y=5.0, color='r', linestyle=‘--’, label=’DO合格线’)`。代码应放置在绘制条柱之后、设置图例和显示之前,以确保参考线一并显示。

展开更多......

收起↑

资源预览