数据可视化实验:时间数据的可视化

数据可视化实验:时间数据的可视化

  • 一、引言与实验原理
  • 二、实验目的与实验环境
  • 三、实验步骤
    • 1.下载数据源
    • 2.导入所需的第三方包
    • 3.打开VScode(或其他编程工具)
    • 4.选择适合的图表
  • 四、总结与心得

一、引言与实验原理

时间是一个非常重要的维度与属性。时间序列数据存在于社会的各个领域,如:天文观测数据、气象图像、临床诊断记录等。诊断记录包括病人的每次看病的病情记录以及心电图等扫描仪器的数据记录等。金融和商业交易记录如股市每天的交易价格及交易量、超市中每种商品的销售情况等。不管是延续性还是暂时性的时间数据,可视化的最终的目的就是从中发现趋势。时间型数据包含时间属性,不仅要表达数据随时间变化的规律,还需表达数据分布的时间规律。它可以分为连续性和离散型时间数据。

这里就讲述下离散型数据的堆叠柱形图,堆叠柱形图的几何形状和常规柱形图很相似,在柱形图中,数据值为并行排列,而在堆叠柱图则是一个个叠加起来的。它的特点就是如果数据存在子分类,并且这些子分类相加有意义的话,此时就可以使用堆叠柱形图来表示。本次实验结合本章讲述的堆叠柱形图的列子,这里我们要画的是极坐标系-堆叠柱状图,也是南丁格尔玫瑰图。由于半径和面积的关系是平方的关系,南丁格尔玫瑰图会将数据的比例大小夸大,尤其适合对比大小相近的数值;由于圆形有周期的特性,所以玫瑰图也适用于表示一个周期内的时间概念,比如星期、月份。下面就用 Python 程序来实现。

二、实验目的与实验环境

本次实验学习的是时间数据可视化技术的操作方法。使用Python完成。主要包括两部分:

  • 掌握时间数据在大数据中的应用
  • 掌握时间数据可视化图表表示
  • 利用 Python 程序实现堆叠柱形图可视化

三、实验步骤

1.下载数据源

从互联网上下载本次实验所需的数据,下载地址为:(http://datasets.flowingdata.com/hot-dog-places.csv),这是历年热狗大胃王比赛的前三名的成绩。

具体数据如下:
在这里插入图片描述
下载完成后将csv文件保存到工作空间下方便下一步操作。
在这里插入图片描述

2.导入所需的第三方包

本实验需要下载一个名为pyecharts的第三方包,网址为:(https://05x-docs.pyecharts.org/#/),这是一个 Python Echarts 绘图库。常用于绘制图表。在终端输入pip install pyecharts即可安装。
在这里插入图片描述

在这里插入图片描述

3.打开VScode(或其他编程工具)

在这里插入图片描述
右击工作区下的VScode py,选择新建文件
在这里插入图片描述
把文件命名为在这里插入图片描述

随后开始编写程序:

1.极坐标的堆叠柱形图,半径表示时间:
在这里插入图片描述
在这里插入图片描述
2.极坐标的堆叠柱形图,圆边表示时间
在这里插入图片描述
在这里插入图片描述

4.选择适合的图表

虽然这两张图表十分美观但并不适合用来表示随年份变化的数据。而众所周知折线图非常适合这类情况下使用,因此接下来我会重新用折线图来表示原数据集。

代码示例:

import matplotlib.pyplot as plt
import numpy as np

plt.rcParams['font.sans-serif'] = ['SimHei'] 
plt.rcParams['axes.unicode_minus'] = False

# 定义年份
years = np.arange(2000, 2011)

# 定义三组数据
data1 = [25, 50, 50.5, 44.5, 53.5, 49, 54, 66, 59, 68, 54]
data2 = [24, 31, 26, 30.5, 38, 37, 52, 63, 59, 64.5, 43]
data3 = [22, 23.5, 25.5, 29.5, 32, 32, 37, 49, 42, 55, 37]

# 创建折线图
plt.figure(figsize=(10, 6))  # 设置图形大小
plt.plot(years, data1, label='第一个人')  # 第一组数据折线
plt.plot(years, data2, label='第二个人')  # 第二组数据折线
plt.plot(years, data3, label='第三个人')  # 第三组数据折线

# 添加标题和标签
plt.title('历年热狗大胃王比赛的前三名的成绩')  # 图表标题
plt.xlabel('年份')  # x轴标签
plt.ylabel('吃掉的热狗数')  # y轴标签


plt.legend()
plt.show()

图表:
在这里插入图片描述
显然使用折线图显示数据更加清晰。

四、总结与心得

本次实验借助Python编程语言与pyecharts库,成功实现了时间数据的可视化,顺利绘制出堆叠柱形图与。在实验进程中,我们深入探究了时间数据于大数据领域的广泛应用场景,以及其可视化呈现的重要意义。堆叠柱形图,适用于展示含有子分类,且子分类总和具备实际意义的数据;另一张图则擅长对比相近数值,或用于呈现周期性时间概念。不过,若要展示随时间变化的趋势,折线图凭借其清晰直观的趋势线条,会是更为适宜的选择。

一个可视化实验完整代码。 一、实验目的和要求 1、 使用API函数编制包含各种资源的Windows应用程序; 2、 实现Windows应用程序对键盘与鼠标的响应。 二、实验内容 : 1、问题描述: 创建一个菜单,其中有三个菜单项,分别为“文件”、“计算”和“帮助”,其中,“文件”菜单项包含“打开”、“保存”、“画图”、“退出”等菜单选项;“计算”菜单包含“总和”、“方差”、“均方根”等菜单选项;“帮助”菜单项包含“计算总和帮助”、“计算方差帮助”和“计算均方根帮助”以及“关于”等项 。 若单击“画图”菜单项,则绘出P103图形。 若在用户区内按下鼠标左键,则动态创建一个包括“删除计算总和”、“添加计算平均值”和“修改计算均方差”三个菜单项的弹出式菜单,由此菜单控制“计算”菜单中菜单项删除、添加与修改。(要求新的弹出式菜单开始时不可用,按下右键后变为可用。) 单击“修改计算均方差”菜单项后,“计算”菜单下的“计算均方差”项改为“线性拟合”,单击“添加计算平均值”菜单项后,“计算”菜单中添加上了“计算平均值”菜单项 。 将光标设定为自己名字中的某个字、图标设定为自己名字中的另一个字。 2、应用程序中所用到的资源、消息,简介主要函数的功能; 3、程序实现 4、操作结果
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值