当前位置: 首页 > article >正文

Python数据可视化-第1章-数据可视化与matplotlib

教材

本书为《Python数据可视化》一书的配套内容,本章为第1章 数据可视化与matplotlib
本文主要介绍了什么是数据集可视化,数据可视化的目的,常见的数据可视化方式,如何选择正确的可视化图表,matplotlib的多种API使用以及matplotlib的层次结构等。
在这里插入图片描述

参考

政务可视化设计经验-图表习惯

数据可视化设计必修课(一):图表篇

一文讲透 | 大屏数据可视化图表选用指南

第1章 数据可视化与matplotlib

什么是数据可视化

数据可视化旨在借助图形化的手段,将一组数据以图形的形式表示,并利用数据分析和开发工具发现其中未知信息的处理过程。

可视化其实是一个抽象的过程,它可以简单地理解为将一个不易描述的事物形成一个可感知画面的过程,也就是从数据空间到图形空间的映射
在这里插入图片描述
数据可视化的过程

数据可视化目的

无论原始数据被映射为哪种图形数据,最终要达到的目的只有一个,便是准确地、高效地、全面地传递信息,进而建立起数据间的关系,使人们发现数据间的规律特征,并挖掘出有价值的信息,提高数据沟通的效率
在这里插入图片描述

常见的数据可视化方式

折线图

在这里插入图片描述

柱形图

在这里插入图片描述

条形图

在这里插入图片描述

堆积图

在这里插入图片描述

直方图

在这里插入图片描述
在这里插入图片描述

箱型图

在这里插入图片描述
在这里插入图片描述

饼图

在这里插入图片描述
在这里插入图片描述

散点图

在这里插入图片描述
在这里插入图片描述

气泡图

在这里插入图片描述

误差棒图

在这里插入图片描述

雷达图

在这里插入图片描述

统计地图

在这里插入图片描述

3D图表

在这里插入图片描述

选择正确的可视化图表

数据通常包含4种关系:比较、分布、构成和联系。

比较:比较关系主要关注数据中各类别或时间变化的情况。
分布:分布关系主要关注不同数值范围内包含多少数据的情况。
构成:构成关系主要关注各部分与整体占比的情况。
联系:联系关系主要关注两个及两个以上的变量之间关系的情况。
在这里插入图片描述

基于比较关系可选择的图表

在这里插入图片描述

基于分布关系可选择的图表

在这里插入图片描述

基于构成关系可选择的图表

在这里插入图片描述

基于联系关系可选择的图表

在这里插入图片描述

不同的划分方法

在这里插入图片描述
在这里插入图片描述

常见的数据可视化库

matplotlibseaborn、ggplot、bokeh、pygal、pyecharts

matplotlib库的简单使用

matplotlib库简介

matplotlib是一个由John D.Hunter等人员开发的、主要用于绘制2D图表的Python库
matplotlib支持numpy、pandas的数据结构,具有绘制丰富的图表、定制图表元素或样式的功能。 matplotlib 还可用于绘制一些3D图表
matplotlib官网提供了三种API:pyplot APIobject-oriented APIpylab API

pyplot API

pyplot API是使用pyplot模块开发的接口,该接口封装了一系列与MATLAB命令同名的函数,使用这些函数可以像使用MATLAB命令一样快速地绘制图表。

通过pyplot API绘制图表的基本思路:

(1)导入pyplot模块。
(2)调用该模块的绘图函数来绘制图表。
(3)展示图表。
pyplot API屏蔽了底层中画布、绘图区域的创建细节,它会持续跟踪当前的画布和绘图区域

import numpy as np
import matplotlib.pyplot as plt     # 导入 pyplot 模块
data = np.array([1, 2, 3, 4, 5])     # 准备数据
plt.plot(data) # 在当前画布的绘图区域中绘制图表
plt.show()   # 展示图表

在这里插入图片描述

object-oriented API

object-oriented API是面向对象的接口,该接口封装了一系列对应图表元素的类,只有创建这些类的对象并按照隶属关系组合到一起才能完成一次完整的绘图。

通过object-oriented API绘制图表的基本思路:

(1)导入pyplot模块。
(2)创建画布(Figure类的对象)。
(3)在画布上添加绘图区域(Axes类的对象)。
(4)调用绘图方法绘制图表。
(5)展示图表。

import numpy as np
import matplotlib.pyplot as plt
data = np.array([1, 2, 3, 4, 5])        # 准备数据
fig = plt.figure()                      #  创建代表画布的Figure 类的对象fig
ax = fig.add_subplot(111)               # 在画布fig上添加坐标系风格的绘图区域ax
ax.plot(data)                           #  绘制图表
plt.show()                              #  展示图表

在这里插入图片描述

pyplot API和 object-oriented API选择

用户在使用时可以根据自身的实际情况进行选择 ,若只是需要快速地绘制图表,可以选择pyplot API进行开发;若需要自定义图表,可以选择object-oriented API进行开发。

matplotlib所绘图形的层次结构

在这里插入图片描述使用matplotlib绘制的图形主要由三层组成:容器层图像层辅助显示层
在这里插入图片描述

关于Canvas对象Figure对象Axes对象的结构如下图所示。
在这里插入图片描述
Axes对象拥有属于自己的坐标系,它可以是直角坐标系,即包含x轴和y轴的坐标系,也可以是三维坐标系(Axes的子类Axes3D对象),即包含x轴、y轴、z轴的坐标系。


http://www.kler.cn/a/613270.html

相关文章:

  • 产生式系统的完整示例——医疗诊断系统(附python代码)
  • F.binary_cross_entropy与sklearn.metric.log_loss的比较
  • 《C语言实现金字塔图案打印》
  • CSS学习笔记6——网页布局
  • CSS-BFC(块级格式化上下文)
  • 企业为何青睐数字孪生大屏?技术驱动与价值重构的双重逻辑
  • 市场价格变动的影响因素及趋势研判
  • 如何应对硬件测试覆盖率不足导致量产故障
  • 深入理解 Linux 文件权限:从 ACL 到扩展属性,解剖底层技术细节与命令应用
  • 将 PDF 转换为 Word — 固定布局 vs 重排布局?
  • HCIA【ACL】
  • 刷题记录(LeetCode 994.腐烂的橘子)
  • 深入理解二叉树、B树与B+树:原理、应用与实现
  • 机器学习中的数学知识
  • Node.js Express 处理静态资源
  • android开启Sys V IPC,并使用共享内存编程
  • 基于音频驱动的CATIA动态曲面生成技术解析
  • MFC TRACE 宏的使用说明
  • MATLAB中getfield函数用法
  • 2025 年吉林省燃气企业从业人员考试:实用备考攻略与考试提分要点​