数据可视化:用图表和图形展示数据

写在开头

在当今信息爆炸的时代,海量的数据如同一座沉默的宝库,等待着我们挖掘和理解。然而,这些庞大的数据集本身可能令人望而生畏。在这个时候,数据可视化成为了解数据、发现模式和传达信息的强大工具。本篇博客将带领你探索数据可视化的奇妙世界,学习如何在python中使用图表和图形将复杂的数据呈现得淋漓尽致。

1. 为什么需要数据可视化?

在数字化的世界里,数据可视化不仅仅是一种美观的展示手段,更是一种强大的沟通工具。通过可视化,我们能够:

  • 提高理解效率: 图表和图形能够将抽象的数字转化为直观的形式,使人们更容易理解和记忆。

  • 发现隐藏模式: 可视化可以帮助我们发现数据中的趋势、关系和异常,从而引导进一步的深入分析。

  • 支持决策: 直观的数据呈现有助于决策者更快速、准确地做出决策,基于数据做出科学的判断。

2. 常见的数据可视化图表

在绘制图像时,往往会遇见中文显示异常的情况,如遇到中文显示异常,请添加下面的代码:

import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei']  # 使用中文黑体

2.1 折线图

折线图是一种展示数据随时间变化趋势的图表,特别适用于观察连续变量的变化。在示例代码中,使用Matplotlib库创建了一个简单的折线图。这个图表通过横轴表示时间,纵轴表示数值,通过连接各个时间点的折线,清晰地展示了数据的变化趋势。

2.1.1 基础的折线图

在python中,运行一下代码,绘制图表:

import matplotlib.pyplot as plt
import numpy as npplt.rcParams['font.sans-serif'] = ['SimHei']  # 使用中文黑体# 示例数据
time = [1, 2, 3, 4, 5]
value = [10, 12, 8, 15, 11]# 创建fig和ax对象,并设置显示图像的尺寸
fig, ax = plt.subplots(figsize=(10, 6))# 绘制折线图
ax.plot(time, value, marker='o',color='red')#设置标题及坐标轴
plt.title('销售额随时间变化')
plt.xlabel('时间(day)')
plt.ylabel('销售额(百万)')plt.show()

运行后,截图如下:
0

2.1.2 带趋势线的折线图
import matplotlib.pyplot as plt
import numpy as npplt.rcParams['font.sans-serif'] = ['SimHei']  # 使用中文黑体# 示例数据
time = [1, 2, 3, 4, 5]
value = [10, 12, 8, 15, 11]# 创建fig和ax对象,并设置显示图像的尺寸
fig, ax = plt.subplots(figsize=(10, 6))# 绘制折线图
ax.plot(time, value, marker='o',color='red')# 设置x轴刻度值
ax.set_xticks(np.arange(len(time)))
ax.set_xticklabels(time)# 在每个坐标点上显示数值
for i, txt in enumerate(value):ax.annotate(str(txt), (time[i], value[i]), textcoords="offset points", xytext=(0,8), ha='center')# 添加线性趋势线
z = np.polyfit(time, value, 1)
p = np.poly1d(z)
ax.plot(time, p(time), '--', label='线性趋势线',color='blue')plt.title('销售额随时间变化')
plt.xlabel('时间(day)')
plt.ylabel('销售额(百万)')
# 显示图例
plt.legend()  
plt.show()

运行以上代码后,效果如下:

1

这样的折线图可以用于追踪各种变化,比如销售额、温度变化等,使得数据的趋势一目了然。

2.2 柱状图

柱状图是比较不同类别数据的一种常见方式。在示例代码中,使用Seaborn库创建了一个简单的柱状图。柱状图的横轴通常表示不同的类别,纵轴表示数值。通过柱子的高度和颜色,可以直观地对比不同类别之间的差异。

2.1 简单的柱状图

seaborn库封装有matplotlib的函数,可以方便的帮我们构建柱状图,以下为简单的一个实例:

import seaborn as sns
categories = ['A', 'B', 'C', 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/187704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

91基于matlab的以GUI实现指纹的识别和匹配百分比

基于matlab的以GUI实现指纹的识别和匹配百分比,中间有对指纹的二值化,M连接,特征提取等处理功能。数据可更换自己的,程序已调通,可直接运行。 91M连接 特征提取 (xiaohongshu.com)

Windows 安装redis,设置开机自启动

Windows 安装redis,设置开机自启动 文章目录 Windows 安装redis,设置开机自启动下载, 解压到指定目录设置redis密码启动redis服务端停止redis服务端设置自启动 下载, 解压到指定目录 官网地址: https://redis.io/ 安装包下载地址: https://github.com/tporadowski/redis/relea…

NB-IoT BC260Y Open CPU SDK⑥ADC的应用

NB-IoT BC260Y Open CPU SDK⑥ADC的应用 1、BC260Y_CN_AA模块 ADC的介绍2、ADC相关API的介绍3、软件设计4、实例分析5、以下是调试的结果:1、BC260Y_CN_AA模块 ADC的介绍 BC260Y-CN QuecOpen 模块提供 2 个专用于 ADC(ADC0、ADC1)功能的 I/O 引脚。通过相应的 API函数可以直…

GPLT(有空就写)

L2 - 047 锦标赛 思路: 将其放入一颗满二叉树上去考虑:从二叉树的最底层开始,每一轮比赛,为同一个祖先的左右两个儿子进行比较,而你需要将败者的能力值填到左右两个儿子其中一个上面,另一个就向上传递表示胜…

2023 IoTDB 用户大会倒计时 3 天 | 1 分钟让你了解 IoTDB!

叮叮!距离 2023 IoTDB 用户大会在北京与大家见面还有 3 天! 这场筹备已久的盛会,汇集了超 20 位大咖嘉宾带来的精彩议题,届时来自美国国家工程院、清华大学软件学院的产业大拿,与能源电力、钢铁冶炼、城轨运输、智能制…

【shell】正则表达式和AWK

一.正则表达式 通配符匹配文件(而且是已存在的文件) 基本正则表达式扩展正则表达式 可以使用 man 手册帮助 正则表达式:匹配的是文章中的字符 通配符:匹配的是文件名 任意单个字符 1.元字符(字符匹配&…

NOIP2007提高组第二轮T3:矩阵取数游戏

题目链接 [NOIP2007 提高组] 矩阵取数游戏 题目描述 帅帅经常跟同学玩一个矩阵取数游戏:对于一个给定的 n m n \times m nm 的矩阵,矩阵中的每个元素 a i , j a_{i,j} ai,j​ 均为非负整数。游戏规则如下: 每次取数时须从每行各取走一…

恒驰服务 | 华为云云上运维服务offering

恒驰运维服务主要针对运维要求高或自身运维能力有限的客户,通过服务增购的形式,提供运维服务以协助客户做好云上资源运维管理,规避业务风险,降低运维开销,提升客户业务稳定性。 适用场景: 如何保障业务稳定…

内衣洗衣机哪个牌子好用?性价比高的迷你洗衣机推荐

洗衣机是现代家庭中必备的一种家用电器,它的使用简便、省时、省力,是我们生活中不可缺少的一部分,差不多家家户户都有一台,甚至两台以上。由于内衣内裤并不能够直接扔进洗衣机里进行清洗,因此一种内衣专业的洗衣机就出…

单机zk安装与zk四字命令

一、下载 Apache ZooKeeper可以在 Linux 系统中使用 wget 命令直接下载,官网地址 Apache ZooKeeper 二、解压 tar -zxvf apache-zookeeper-3.8.3-bin.tar.gz 进去解压的目录中, 进入到 zk 解压目录的 conf 目录,复制 zoo_sample.cfg 文件&a…

简单实用:isPalindrome方法在密码验证中的应用

在信息安全领域中,密码验证是非常重要的一部分。一个好的密码应该有足够的复杂度,以防止被破解。而回文密码由于正读和反读都一样这样特殊的性质,具有很高的安全性,可以发挥很大的作用。在实际的密码策略中,我们可能会…

2023认证杯B题:金属表面缺陷检测|数学中国数学建模国际赛(小美赛) |数学建模完整代码+建模过程全解全析

当大家面临着复杂的数学建模问题时,你是否曾经感到茫然无措?作为2022年美国大学生数学建模比赛的O奖得主,我为大家提供了一套优秀的解题思路,让你轻松应对各种难题。 让我们来看看认证杯的B题! 完整内容可以在文章末…

你对SPA单页面的理解,它的优缺点分别是什么?

面试官:你对SPA单页面的理解,它的优缺点分别是什么?如何实现SPA应用呢 一、什么是SPA SPA(single-page application),翻译过来就是单页应用SPA是一种网络应用程序或网站的模型,它通过动态重写当…

Whisper

文章目录 使后感Paper Review个人觉得有趣的Log Mel spectrogram & STFT Trainingcross-attention输入cross-attention输出positional encoding数据 Decoding为什么可以有时间戳的信息 Test code 使后感 因为运用里需要考虑到时效和准确性,类似于YOLO&#xff…

vue3使用动态component

使用场景: 多个组件通过component标签挂载在同一个组件中,通过触发时间进行动态切换。vue3与vue2用法不一样,这里有坑! 使用方法: 1.通过vue的defineAsyncComponent实现挂载组件 2.component中的is属性 父组件&am…

GaussDB如何进行性能调优

GaussDB如何进行性能调优 GaussDB性能调优过程需要综合考虑多方面因素,因此,调优人员应对系统软件架构、软硬件配置、数据库配置参数、并发控制、查询处理和数据库应用有广泛而深刻的理解。 调优流程 调优各阶段说明,如下表所示。 数据库性…

深入探究Photoshop图像修复与润饰技巧

💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 在Photoshop中,图像修复和润饰是强…

Vim Coc插件实现代码跳转

Vim Coc插件实现代码跳转 按照coc主页的配置 里面是有提供代码跳转的功能的 具体配置如下 " GoTo code navigation nmap <silent> gd <Plug>(coc-definition) nmap <silent> gy <Plug>(coc-type-definition) nmap <silent> gi <Plug…

CNN对 MNIST 数据库中的图像进行分类

加载 MNIST 数据库 MNIST 是机器学习领域最著名的数据集之一。 它有 70,000 张手写数字图像 - 下载非常简单 - 图像尺寸为 28x28 - 灰度图 from keras.datasets import mnist# 使用 Keras 导入MNIST 数据库 (X_train, y_train), (X_test, y_test) mnist.load_data()print(&…

代码随想录算法训练营第三十六天| 435 无重叠区间 763 划分字母区间 56 合并区间

目录 435 无重叠区间 763 划分字母区间 56 合并区间 435 无重叠区间 将intervals数组按照左端点进行升序排序。 设置变量len标志此时新加入端点后所有区间的位置&#xff0c;将其赋初值为第一对区间的右端点&#xff0c;因为该点是一定可达的。设置变量res来存储需要移除空间…