【干货!】用Python演绎5种常见可视化视图

python生成可视化操作界面,python做可视化数据图表 本文我们分享了如何利用 Python 及 matplotlib 和 seaborn 库制作出多种多样的可视化图形。通过上面的例子,我们应该可以感受到利用可视化能多么美丽的展示数据。而且和其它语言相比,使用 Python 进行可视化更容易简便一些。 阅读详情

通过本篇文章,你将学到:

  • 视图的分类,从哪些维度进行分类

  • 5种常见视图的概念,以及如何在Python中进行使用,都需要用到哪些函数。

注意:想要更深层次的理解,需要自己动手跑代码,体验数据可视化过程

今天我来给你讲讲Python的可视化技术。

如果你想要用Python进行数据分析,就需要在项目初期开始进行探索性的数据分析,这样方便你对数据有一定的了解。其中最直观的就是采用数据可视化技术,这样,数据不仅一目了然,而且更容易被解读。同样在数据分析得到结果之后,我们还需要用到可视化技术,把最终的结果呈现出来。

可视化视图有哪些?

按照数据之间的关系,我们可以把可视化视图划分为4类,它们分别是比较、联系、构成和分布。我来简单介绍下这四种关系的特点:

  • 比较:比较数据间各类别的关系,或者是它们随着时间的变化趋势,比如折线图。

  • 联系:查看两个或两个以上变量之间的关系,比如散点图。

  • 构成:每个部分占整体的百分比,或者是随着时间的百分比变化,比如饼图。

  • 分布:关注单个变量,或者多个变量的分布情况,比如直方图。

同样,按照变量的个数,我们可以把可视化视图划分为单变量分析和多变量分析。

  • 单变量分析指的是一次只关注一个变量。比如我们只关注“身高”这个变量,来看身高的取值分布,而暂时忽略其他变量。

  • 多变量分析可以让你在一张图上可以查看两个以上变量的关系。比如“身高”和“年龄”,你可以理解是同一个人的两个参数,这样在同一张图中可以看到每个人的“身高”和“年龄”的取值,从而分析出来这两个变量之间是否存在某种联系。

常见视图

可视化的视图可以说是分门别类,多种多样,今天我主要介绍常用的5种视图,包括了散点图、折线图、直方图、热力图、成对关系。

1.散点图

散点图的英文叫做scatter plot,它将两个变量的值显示在二维坐标中,非常适合展示两个变量之间的关系。当然,除了二维的散点图,我们还有三维的散点图。

在Matplotlib中,我们经常会用到pyplot这个工具包,它包括了很多绘图函数,类似Matlab的绘图框架。在使用前你需要进行引用:

import matplotlib.pyplot as plt

在工具包引用后,画散点图,需要使用plt.scatter(x, y, marker=None)函数。x、y 是坐标,marker代表了标记的符号。比如“x”、“>”或者“o”。选择不同的marker,呈现出来的符号样式也会不同,你可以自己试一下。

下面三张图分别对应“x”“>”和“o”。

除了Matplotlib外,你也可以使用Seaborn进行散点图的绘制。在使用Seaborn前,也需要进行包引用:

import seaborn as sns

在引用seaborn工具包之后,就可以使用seaborn工具包的函数了。如果想要做散点图,可以直接使用sns.jointplot(x, y, data=None, kind='scatter')函数。其中x、y是data中的下标。data就是我们要传入的数据,一般是DataFrame类型。kind这类我们取scatter,代表散点的意思。当然kind还可以取其他值,这个我在后面的视图中会讲到,不同的kind代表不同的视图绘制方式。

好了,让我们来模拟下,假设我们的数据是随机的1000个点。

我们运行一下这个代码,就可以看到下面的视图(第一张图为Matplotlib绘制的,第二张图为Seaborn绘制的)。其实你能看到Matplotlib和Seaborn的视图呈现还是有差别的。Matplotlib默认情况下呈现出来的是个长方形。而Seaborn呈现的是个正方形,而且不仅显示出了散点图,还给了这两个变量的分布情况。

Matplotlib绘制:

Seaborn绘制:

2.折线图

折线图可以用来表示数据随着时间变化的趋势。

在Matplotlib中,我们可以直接使用plt.plot()函数,当然需要提前把数据按照X轴的大小进行排序,要不画出来的折线图就无法按照X轴递增的顺序展示。

在Seaborn中,我们使用sns.lineplot (x, y, data=None)函数。其中x、y是data中的下标。data就是我们要传入的数据,一般是DataFrame类型。

这里我们设置了x、y的数组。x数组代表时间(年),y数组我们随便设置几个取值。下面是详细的代码。

然后我们分别用Matplotlib和Seaborn进行画图,可以得到下面的图示。你可以看出这两个图示的结果是完全一样的,只是在seaborn中标记了x和y轴的含义。

3.直方图

直方图是比较常见的视图,它是把横坐标等分成了一定数量的小区间,这个小区间也叫作“箱子”,然后在每个“箱子”内用矩形条(bars)展示该箱子的箱子数(也就是y值),这样就完成了对数据集的直方图分布的可视化。

在Matplotlib中,我们使用plt.hist(x, bins=10)函数,其中参数x是一维数组,bins代表直方图中的箱子数量,默认是10。

在Seaborn中,我们使用sns.distplot(x, bins=10, kde=True)函数。其中参数x是一维数组,bins代表直方图中的箱子数量,kde代表显示核密度估计,默认是True,我们也可以把kde设置为False,不进行显示。核密度估计是通过核函数帮我们来估计概率密度的方法。

这是一段绘制直方图的代码。

我们创建一个随机的一维数组,然后分别用Matplotlib和Seaborn进行直方图的显示,结果如下,你可以看出,没有任何差别,其中最后一张图就是kde默认为Ture时的显示情况。

4.热力图

热力图,英文叫heat map,是一种矩阵表示方法,其中矩阵中的元素值用颜色来代表,不同的颜色代表不同大小的值。通过颜色就能直观地知道某个位置上数值的大小。另外你也可以将这个位置上的颜色,与数据集中的其他位置颜色进行比较。

热力图是一种非常直观的多元变量分析方法。

我们一般使用Seaborn中的sns.heatmap(data)函数,其中data代表需要绘制的热力图数据。

这里我们使用Seaborn中自带的数据集flights,该数据集记录了1949年到1960年期间,每个月的航班乘客的数量。

通过seaborn的heatmap函数,我们可以观察到不同年份,不同月份的乘客数量变化情况,其中颜色越浅的代表乘客数量越多,如下图所示:

5.成对关系

如果想要探索数据集中的多个成对双变量的分布,可以直接采用sns.pairplot()函数。它会同时展示出DataFrame中每对变量的关系,另外在对角线上,你能看到每个变量自身作为单变量的分布情况。它可以说是探索性分析中的常用函数,可以很快帮我们理解变量对之间的关系。

pairplot函数的使用,就好像我们对DataFrame使用describe()函数一样方便,是数据探索中的常用函数。

这里我们使用Seaborn中自带的iris数据集,这个数据集也叫鸢尾花数据集。鸢尾花可以分成Setosa、Versicolour和Virginica三个品种,在这个数据集中,针对每一个品种,都有50个数据,每个数据中包括了4个属性,分别是花萼长度、花萼宽度、花瓣长度和花瓣宽度。通过这些数据,需要你来预测鸢尾花卉属于三个品种中的哪一种。

这里我们用seaborn中的pairplot函数来对数据集中的多个双变量的关系进行探索,如下图所示。从图上你能看出,一共有sepal_length、sepal_width、petal_length和petal_width4个变量,它们分别是花萼长度、花萼宽度、花瓣长度和花瓣宽度。

下面这张图相当于这4个变量两两之间的关系。比如矩阵中的第一张图代表的就是花萼长度自身的分布图,它右侧的这张图代表的是花萼长度与花萼宽度这两个变量之间的关系。

End.

作者:妄心xyx

来源:简书

本文为转载分享,如有侵权请联系后台删除

Cadence安装 选择刚刚解压的E盘DVD驱动中的setup.exe文件,安装路径推荐D盘,此处会自己给你新建文件夹,我们无需手动建文件夹。但是,新产品有一些BUG(影响使用流畅性),所以我们要对17.4打补丁,补丁包同样去吴川斌的博客下载。下载阿狸狗破戒大师 我这边下载的是版本V3.2.6,同样在吴川斌的博客下载安装包,链接同上。记录一下安装过程,方便以后安装使用Cadence。破解完成后,建议将这两个软件创建快捷方式到桌面。到这里,我们已经可以正常的使用Cadence了。对光盘映像文件解压后双击,可以在我的电脑看到。 阅读详情

相关推荐

MatLab Desired port was :31515解决方案

前言:使用的MatLabR2022b今天突然出现了错误,在程序中打不开文件。后尝试了下面的方法,可以解决。后面还有另一种方法,上面方法如果行不通,大家可以尝试一下。搜索栏输入:firewall.cpl。找到相关项,右键属性,设置为允许。

qq_42212501的博客 1342

用Python进行数据可视化的9种常用方法,易上手超实用 !!

Python数据可视化常用方法

xiaolinyui的博客 1万+

合宙ESP32C3实战:MPU6500六轴传感器数据读取与校准全解析

本文详细解析了如何使用合宙ESP32C3开发板读取和校准MPU6500六轴姿态传感器数据。从硬件接线、开发环境搭建到核心代码解析,提供了全面的实战指南,帮助开发者快速掌握传感器配置与数据处理技巧,适用于姿态控制、运动检测等应用场景。

weixin_27066963的博客 407

第五章. 可视化数据分析图表—常用图表的绘制3—散点图,面积图,热力图

第五章. 可视化数据分析图表—常用图表的绘制3—散点图,面积图,热力图

weixin_45116749的博客 1923

Cadence 17.2 OrCAD原理图库实战:从零创建电阻/电容/LED元件(附封装技巧)

本文以Cadence 17.2 OrCAD为核心,详细讲解了如何从零开始工程化地创建电阻、电容、LED等原理图库元件。内容涵盖库架构设计、符号绘制、引脚属性管理、封装关联技巧以及设计规则检查,旨在帮助硬件工程师构建规范、可复用且易于维护的元件库,为高效PCB设计奠定坚实基础。

weixin_29195615的博客 402

JDK8升级JDK17过程中遇到的那些坑

JDK8虽然非常好,但是JDK版本已经发布到JDK20了,且JDK8后的版本升级了很多新的特性,如模块化、ZGC以及虚拟线程、结构性并发等,也是非常有吸引力的,所以决定将基于JDK8的项目升级到最近的LTS版本JDK17。

BASK2312的博客 6686

python数据可视化——如何选择合适的视图

按照需要体现的内容确定合类型的视图。

qq_39224221的博客 251

华为OD机试真题 新系统【优化充电桩调度算法】

华为OD机试 新系统真题【优化充电桩调度算法】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【优化充电桩调度算法】

qq_45776114的博客 758

【Python入门可视化】:22个完整数据可视化小例子,带你玩转可视化~

1. 柱状图堆叠 不同系列的数据使用相同的stack值会堆叠在一起; from pyecharts.charts import * from pyecharts import options as opts from pyecharts.faker import Faker def bar_stack(): bar = Bar(init_opts=opts.InitOpts(theme='light', width='

yunyun云芸 2万+

基于Simulink的PID控制防抱死制动系统(ABS)建模与仿真

防抱死制动系统(Anti-lock Braking System,简称ABS)是一种用于防止车辆在紧急制动时车轮完全抱死的技术。通过实时监测车轮速度并调节制动力,ABS能够显著提高车辆的制动性能和操控稳定性,从而减少交通事故的发生。PID(比例-积分-微分)控制器因其结构简单、性能稳定且易于实现而被广泛应用于ABS控制系统中。本项目旨在通过MATLAB/Simulink平台设计和验证一个基于PID控制的ABS系统,重点研究PID参数调优方法、系统动态响应特性以及制动过程中的滑移率控制能力。

MHD0815的博客 486

自动驾驶领域自动化数据标注应用

自动驾驶领域自动化数据标注应用 1. 背景介绍 1.1 自动驾驶技术的发展 自动驾驶技术近年来取得了长足的进步,吸引了众多科技公司和传统车企的投入。自动驾驶系统需要感知周围环境、做出决策并控制车辆,是一个极具挑战的任务。其中,环境感知是自

AI天才研究院 2215

python sns绘制回归线_【干货!】用Python演绎5种常见可视化视图

-点击上方“中国统计网”订阅我吧!-通过本篇文章,你将学到:视图的分类,从哪些维度进行分类5种常见视图的概念,以及如何在Python中进行使用,都需要用到哪些函数。注意:想要更深层次的理解,需要自己动手跑代码,体验数据可视化过程今天我来给你讲讲Python的可视化技术。如果你想要用Python进行数据分析,就需要在项目初期开始进行探索性的数据分析,这样方便你对数据有一定的了解。其中最直...

weixin_39777242的博客 837

AI Agent驱动的多模态情感分析方法:从BERT到Vision Transformer的探索

情感分析(Sentiment Analysis)是自然语言处理(NLP)与计算机视觉(CV)中一项重要任务。传统的情感分析主要依赖于文本数据,但在现实应用中,情感往往通过 语言、语音、表情、姿态 等多模态信号共同传达。因此,结合 多模态深度学习 的 AI Agent 在情感理解中具有广阔的前景。

一键难忘的博客 740

237篇 历史文章合集

大家好,我是朱小五给大家整理了一下「凹凸数据」截止到2020年7月5日的历史文章合集。点击文章标题就可以跳转到相应文章,定期更新。大家可以按目录依次查看,也可以搜索(手机端点击右上角3个...

zhuxiao5的博客 5015

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

搞懂python的内存视图memoryview

所谓内存查看对象,是指对支持缓冲区协议的数据进行包装,在不需要复制对象基础上允许Python代码访问。

酌沧 1590

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

零基础入门学习Python第二阶04SQL详解03

关于 SQL 和 MySQL 的知识肯定远远不止上面列出的这些,比如 SQL 本身的优化、MySQL 性能调优、MySQL 运维相关工具、MySQL 数据的备份和恢复、监控 MySQL 服务、部署高可用架构等,这一系列的问题在这里都没有办法逐一展开来讨论,那就留到有需要的时候再进行讲解吧,各位读者也可以自行探索。

BrentenJavon的博客 1579

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

相关类可视化图像总结

共性特征1. 以数据关系为核心:(1)均通过图形化手段直观呈现变量间的相关性、分布特征或多维对比,帮助快速捕捉数据规律(如线性关系、正负关联、聚集区域等)。(2)依赖数学统计基础(如相关系数、概率分布),结论具备量化依据(如相关系数值、密度分布区间)。2. 适用场景互补:(1)双变量分析:散点图(小数据)与二维密度图(大数据)侧重展示两两变量的线性关系与分布形态。

2302_81177450的博客 1147

10个实用的Python数据可视化图表总结

数据可视化是数据科学中不可缺少的一部分。在数据科学中,我们与数据打交道。手工分析少量数据是可以的,但当我们处理数千个数据时它就变得非常麻烦。如果我们不能发现数据集的趋势和洞察力,我们可能无法使用这些数据。

xx16755498979的博客 7391

超全的 Python 可视化教程,收藏

今天小编总结归纳了若干个常用的可视化图表,并且通过调用、、、和等模块来分别绘制这些常用的可视化图表,最后无论是绘制可视化的代码,还是会指出来的结果都会通过调用模块展示在一个可视化大屏,出来的效果如下图所示那我们接下去便一步一步开始可视化大屏的制作吧!首先我们对标题、副标题部分的内容,代码如下 然后便是下拉框的制作,代码如下\ 对于图表的展示可以选择是“双排式”的,如下图所示也可以选择是沉浸式的,也即是“单排式”的,如下图所示代码如下 对于双排式的展示方式而言,也就是左边,放置的是、、以及绘制出来

sixqingfeng的博客 6661

python画图片的直方图_史上最炫酷的Python可视化神器

数据分析离不开数据可视化。比如我们了解的pandas画图,matplotlib、seaborn画图,pyecharts画图当然还有Tableau,Echarts、Power BI等软件。今天推荐一款更牛的可视化神器,主要是这款神器的画出来的图很漂亮,色彩太酷了。神器PlotlyPlotly,一个用于做分析和可视化的在线平台,曾被网友称为“有史以来最牛逼”可视化神器(具体无从考据),为何有...

weixin_39612877的博客 807

数据分析之理解数据

一、数据导入 In [8]: import pandas from pandas import set_option #括号里面直接指定了数据的来源,当然你也可以按照老师视频中所讲授的来操作 iris = pandas.read_csv('http://archive.ics.uci.edu/ml/machine-learning-databases/iri

若云流风的专栏 3440

【Python数据可视化】matplotlib之绘制高级图形:散点图、热力图、等值线图、极坐标图

前面介绍了一些常用技巧和常见的图形(折线图、柱状图(条形图)、饼图和直方图),这篇分享一下如何绘制一些高级图形:散点图、热力图、等值线图、极坐标图。

森林的博客——在完成之前,似乎总是不可能的~ 3565

Python-类视图和蓝图

Python-类视图和蓝图

weixin_69884785的博客 2174

pythongui界面直方图_Python pyplot可视化直方图的绘制,pythonpyplot,之,柱状图

可视化操作是工程师必备技能。在算法开发中,可视化能够辅助调试。本文对pyplot绘制柱形图做记录。今天我欲对se_net中权重的学习情况进行可视化研究,从而判断出哪个通道/特征占据主导因素。其中使用pyplot进行可视化。jupyter notebook代码如下:%matplotlib inline%config InlineBackend.figure_format = 'svg'#se权重ou...

weixin_42400518的博客 696

Python科学工具——matplotlib可视化(柱状图、直方图、饼图)

一、绘制柱形(状)图 柱状图(bar chart),是一种以长方形的长度为变量的表达图形的统计报告图,由一系列高度不等的纵向条纹表示数据分布的情况,用来比较两个或两个以上的价值(不同时间或者不同条件)。 或者说,指不同事物之间或同一事物在不同时间下的优劣等的对照,能够比较清晰地反映数据的差异,一般情况下用来反映分类项目之间的比较。 pyplot中绘制柱状图的函数为bar,其语法格式. plt.bar(x, height, width=0.8, bottom=None, *, align=‘center’,

ChristensonLee的博客 6442
上一篇: Python 的 __name__ 变量,到底是个什么东西?
下一篇: 哪些“双一流”更得华为偏爱?这所高校人数远超清北华五
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值