Matplotlib数据可视化!

Python Matplotlib实现数据可视化的5种方法详解 数据科学家并不逊色于艺术家。他们用数据可视化的方式绘画,试图展现数据内隐藏的模式或表达对数据的见解。更有趣的是,一旦接触到任何可视化的内容、数据时,人类会有更强烈的知觉、认知和交流。数据可视化是数据科学家工作中的重要组成部分。在项目的早期阶段,你通常会进行探索性数据分析(Exploratory Data Analysis,EDA)以获取对数据的一些理解。创建可视化方法确实有助于使事情变得更加清晰易懂,特别是对于大型、高维数据集。 阅读详情

AI派在读学生小姐姐Beyonce

Java实战项目练习群

长按识别下方二维码,按需求添加

扫码添加Beyonce小姐姐

扫码关注

进Java学习大礼包

数据可视化,就是指将结构或非结构数据转换成适当的可视化图表,然后将隐藏在数据中的信息直接展现于人们面前。相比传统的用表格或文档展现数据的方式,可视化能将数据以更加直观的方式展现出来,使数据更加客观、更具说服力。

数据可视化已经被用于工作科研的方方面面,如工作报表、科研论文等,成为了不可或缺的基础技能。现在,就让我们一起来学习下数据可视化的基础知识。

一、 常用可视化工具

Python有许多用于数据可视化的库,例如常见的有seaborn、pyecharts(echarts的Python版本)、ggplot(移植于R语言的ggplot2,但是有些差别,Python有其他方法可以调用R语言的ggplot2)、bokeh、Plotly(同时支持Python和R语言)等等,这些大多是基于Matplotlib进行开发封装的。

Matplotlib是一个Python 2D绘图库(使用Matplotlib发布的mpl_toolkits库可以画3D图形 ),能够以多种硬拷贝格式和跨平台的交互式环境生成出版物质量的图形,用来绘制各种静态,动态,交互式的图表。

Matplotlib 是 Python 最著名的绘图库,它提供了一整套和 MATLAB 相似的命令 API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,使用在Python脚本,Python和IPython Shell、Jupyter notebook,Web应用程序服务器和各种图形用户界面工具包等上面。

二、 Matplotlib 初识

1. 例子

Matplotlib的图像是画在figure(如windows,jupyter窗体)上的,每一个figure又包含了一个或多个axes(一个可以指定坐标系的子区域)。最简单的创建figure以及axes的方式是通过pyplot.subplots命令,创建axes以后,可以使用Axes.plot绘制最简易的折线图。

声明:以下使用的是IPython Shell

%matplotlib  # 在IPython Shell调用Matplotlib绘图接口,需要加这行代码
import matplotlib.pyplot as plt
import numpy as np
 
fig, ax= plt.subplots()  # 创建一个包含一个axes的figure
 # 绘图
ax.plot([1, 2, 3, 4], [1, 4, 3, 2])  

这里有一个小知识点,很小很小,但是对于刚刚接触数据可视化的新手可能容易弄混。ax.plot([1, 2, 3, 4], [1, 4, 3, 2]) 这句代码里面第一个参数是数据集里各个数据点的X值的集合,第二个参数数据集里各个数据点的Y值的集合。所以这里输入的参数值并不是数学上常见的成对坐标点如(x1,y1)、(x2,y2)、...、(xn,yn)的格式,而是 (x1,x2,...,xn)和(y1,y2,...,yn) 。

2. 例子

和MATLAB命令类似,你还可以通过一种更简单的方式绘制图像,matplotlib.pyplot 方法能够直接在当前axes上绘制图像,如果用户未指定axes,matplotlib会帮你自动创建一个。所以上面的例子也可以简化为以下这一行代码。

plt.plot([1, 2, 3, 4], [1, 4, 2, 3])  

这里有个trick(坑)需要注意一下。如上所示,在IPython或jupyter notebook的同一个代码框中,如果不对其声明画在哪个图上(可以使用 plot() 函数里面的 ax 参数进行指定),就会自动画到最后一个创建的图上(即最后一个Figure对象的最后一个Axes子图里)。

plt.figure()  # 创建一个新的Figure对象
plt.plot([1, 2, 3, 4], [1, 4, 2, 3]) 

更多例子可以在Matplotlib官网查看:
https://matplotlib.org/gallery/index.html

三、 Matplotlib 全貌

现在我们来深入看一下figure的组成。通过一张figure解剖图,我们可以看到一个完整的matplotlib图像通常会包括以下四个层级,这些层级也被称为容器(container),下一节会详细介绍。在matplotlib的世界中,我们将通过各种命令方法来操纵图像中的每一个部分,从而达到数据可视化的最终效果,一副完整的图像实际上是各类子元素的集合。

  • Figure:顶层级,用来容纳所有绘图元素。

  • Axes:matplotlib宇宙的核心,容纳了大量元素用来构造一幅幅子图,一个figure可以由一个或多个子图组成。

  • Axis:axes的下属层级,用于处理所有和坐标轴,网格有关的元素。

  • Tick:axis的下属层级,用来处理所有和刻度有关的元素。

四、 Matplotlib 绘图接口

matplotlib提供了两种最常用的绘图接口

  1. 显式创建figure和axes,在上面调用绘图方法,也被称为OO模式(object-oriented style)。

  2. 依赖pyplot自动创建figure和axes,并绘图。

使用第一种绘图接口,是这样的:

x = np.linspace(0, 2, 100)

fig, ax = plt.subplots()  
ax.plot(x, x, label='linear')  
ax.plot(x, x**2, label='quadratic')  
ax.plot(x, x**3, label='cubic')  
ax.set_xlabel('x label') 
ax.set_ylabel('y label') 
ax.set_title("Simple Plot")  
ax.legend() 

而如果采用第二种绘图接口,绘制同样的图,代码是这样的:
plt.figure()  IPython 里面需要加这行,jupyter notebook则不用,原因见<2.2 例子2>。

x = np.linspace(0, 2, 100)

plt.figure()  # IPython里面需要加这行,jupyter notebook则不用
plt.plot(x, x, label='linear') 
plt.plot(x, x**2, label='quadratic')  
plt.plot(x, x**3, label='cubic')
plt.xlabel('x label')
plt.ylabel('y label')
plt.title("Simple Plot")
plt.legend()

五、 讨论

在工作或学习中通常何时会用到数据可视化,希望通过可视化达到什么目的?

个人经验:

  • ① 在机器学习中,数据可视化经常用于各种算法模型拟合效果的直观展示。

例子1:线性回归模型的拟合效果。

例子2:机器学习聚类算法的K-MEANS算法和DBSCAN算法对数据集划分类别的效果对比。
下图来源:K-MEANS可视化网站https://www.naftaliharris.com/blog/visualizing-k-means-clustering/

下图来源:DBSCAN算法可视化网站https://www.naftaliharris.com/blog/visualizing-dbscan-clustering/

  • ② 在数据分析和数据挖掘中经常用来检查数据的分布,以及窥探数据集内在的规律或事件发展的规律。以下是个人在数据分析和数据挖掘中使用到数据可视化的2个案例。
    例1:使用黄氏曲线评估零售店促销活动效果
    例2:Kaggle项目:Predict Future Sales(商品未来销量预测)

参考连接:(数据可视化开源教程)

https://github.com/datawhalechina/fantastic-matplotlib

文末福利

各位猿们,还在为记不住API发愁吗,哈哈哈,最近发现了国外大师整理了一份Python代码速查表和Pycharm快捷键sheet,火爆国外,这里分享给大家。

这个是一份Python代码速查表

下面的宝藏图片是2张(windows && Mac)高清的PyCharm快捷键一览图

怎样获取呢?可以添加我们的AI派团队的Beyonce小姐姐

一定要备注【高清图】哦

????????????????????

➕我们的Beyonce小姐姐微信要记得备注【高清图】哦

来都来了,喜欢的话就请分享、点赞、在看三连再走吧~~~

Python数据可视化工具——Matplotlib Matplotlib的使用教程,主要介绍散点图、饼图、柱状图、直方图以及箱线图的绘制 阅读详情

相关推荐

【python】数据可视化——matplotlib

matplotlib是一个强大的Python绘图库,用于创建高质量的静态、动态和交互式图表。它提供了广泛的绘图选项,适用于数据可视化、科学计算、工程绘图等多个领域。

urge的博客 2680

Matplotlib-数据可视化详解

可视化介绍数据可视化是指直观展现数据,它是数据处理过程的一部分。把数值绘制出来更方便比较。借助数据可视化,能更直观地理解数据,这是直接查看数据表做不到的数据可视化有助于揭示数据中隐藏的模式,数据分析时可以利用这些模式选择模型可视化库介绍基于Matplotlib 绘制静态图形pandasseaborn基于JS (javaScript)plotly状态接口和面向对象导包# 使用Matplotlib需要导入pyplot# Matplotlib.pyplot 包含一系列绘图函数的相关函数。

2201_75415080的博客 2326

带挂牵引车倒车运动模型推导及仿真实现

半挂牵引车在倒车时,由于鞍座主销的连接限制,其运动方式与乘用车有显著差异。例如,乘用车在右侧倒车入库时,只需确定泊车起点并将方向盘向右打死。相反,牵引车在倒车时需要先向左转方向盘,当铰接角达到防折叠的临界值时,再将方向盘向右转回,以调整牵引车与挂车至直线状态,完成泊车入库。本研究旨在建立一个基于牵引车带挂车倒车运动学模型,该模型基于以下假设: 道路在车辆行驶过程中保持平坦,无凹凸不平; 车辆以低速行驶,且在运行过程中车身不发生侧倾或俯仰; 行驶过程中,轮胎无变形,无侧向滑动,且不产

jianmo的博客 2697

使用Matplotlib进行基本数据可视化

通过本文的介绍,你应该已经掌握了如何使用。

att1472的博客 1442

stm32教程之三重ADC交错采样

ps:本文基于stm32F407ZGT6单片机 stm32F4单片机单通道采集的最大采样率为2.4M,所以有时会难以满足较高频率的采样,于是查阅芯片手册,发现stm32F4支持多重ADC采集,利用每个通道的转换时间,错位采样,从而提高采样率,最大把采样率开到2.4*3=7.2M. (去年初学ADC时研究的,基于cube和HAL库的三重ADC交错采样参考资料不多,我也是研究了一段时间,写下这篇博客希望可以帮助到更多人。) 示意图如下: 以下是官方例子的说明, In this ex...

weixin_52178036的博客 8877

极简JEPA世界模型实战:低门槛复现LeWorldModel,CPU可跑

这次我们来看一个能让普通开发者真正上手跑起来的“世界模型”项目。如果你对Yann LeCun提出的JEPA(联合嵌入预测架构)框架感兴趣,但又苦于Meta官方实现过于庞大复杂,那么这个GitHub上4k star的项目就是为你准备的。它用极简的PyTorch代码(核心文件仅160-278行)完整复刻了包括LeWorldModel在内的五个JEPA核心变体,最大的亮点是: 门槛极低,普通笔记本甚至CPU就能跑,显存占用友好,非常适合学习和原理验证。 这个项目名为 keon/jepa ,完全开源。它剥离了工业级

weixin_29031161的博客 423

matplotlib数据可视化实战!

ax.plot_surface(x, y, z, *args, **kwargs) #绘制三维曲面。ax.bar3d(x, y, z, dx, dy, dz, color....) #绘制三维柱状图。· format指定保存文件的扩展名,如.png, .pdf, .jpg, .tif等。plot(x,y,'r*')红色*号标记端点,不画线。· x:数组形式的数据,自动计算其中每个数据的占比并确定对应的扇形的面积。默认为1,表示不透明。· 标记为:'./o/v/^/>/*/+/_/x/D等。

weixin_74152658的博客 1074

从原理到代码:拆解UniFormer中动态位置嵌入(DPE)的3D卷积实现

本文深入解析了UniFormer模型中动态位置嵌入(DPE)模块的3D卷积实现原理与代码。DPE通过一个轻量的3D深度可分离卷积,替代传统静态位置编码,使模型能自动学习视频数据的时空位置关系。文章对比了其与Swin Transformer相对位置偏置的优劣,并提供了PyTorch实现代码与高级定制方案,为视频理解任务提供了高效灵活的动态位置编码解决方案。

weixin_29207149的博客 310

数据可视化_Matplotlib数据可视化!

↑↑↑关注后"星标"Datawhale每日干货&每月组队学习,不错过Datawhale干货作者:橡鱼,Datawhale优秀学习者数据可视化,就是指将结构或非结构数据转换成适当的可视化图表,然后将隐藏在数据中的信息直接展现于人们面前。相比传统的用表格或文档展现数据的方式,可视化能将数据以更加直观的方式展现出来,使数据更加客观、更具说服力。数据可视化已经被用于工作科研的方方...

weixin_36212334的博客 319

Ubuntu下Ollama局域网共享大模型服务:5分钟搞定配置与防火墙设置

本文提供了一份在Ubuntu系统上快速配置Ollama实现局域网共享大模型服务的实战指南。通过修改服务配置使其监听所有网络接口,并设置UFW防火墙规则,用户可在5分钟内让同一Wi-Fi下的其他设备(如笔记本、手机)便捷调用主机上的AI模型能力,实现团队或多设备间的AI资源共享。

ik6789012的博客 826

整车无线布置的综述

车载无线功能日益丰富,涵盖5G、GNSS、V2X等多种技术,布置需兼顾性能与美观。车顶是理想位置,鲨鱼鳍、后视镜等集成方案可优化空间。需考虑射频电缆损耗、GNSS天线视角、V2X全向覆盖等关键因素。整车测试需适应高频段需求,通过链路预算和互补天线设计优化信号。不同车型需定制方案,并注意抗干扰和多频段兼容性。(149字)

Godspeed_zwh的博客 1861

【Python数据可视化】利用Matplotlib绘制美丽图表!

Matplotlib 是 Python 中一个广泛使用的 2D 图形绘图库,提供了从简单到复杂的各种图表类型。它以简单易用的 API 和丰富的自定义能力为用户所喜爱。无论是科研、工程应用,还是金融数据分析,Matplotlib 都能帮助用户将数据以直观的方式呈现出来。折线图(Line Plot)柱状图(Bar Chart)散点图(Scatter Plot)饼图(Pie Chart)箱线图(Box Plot)marker:标记数据点的样式。color:线条颜色。linestyle。

萧鼎的博客 1777

别再拿空气标定法糊弄了!手把手教你搞定水下相机标定(附Python代码)

本文详细解析水下相机标定的关键技术,揭示传统空气标定法失效原因,并提供基于单视点模型(SVP)的完整Python解决方案。通过折射效应分析、标定板设计优化和代码实战演示,帮助读者掌握水下标定核心方法,有效提升水下视觉系统测量精度。

weixin_30530939的博客 210

【无痛学Python】Matplotlib数据可视化,看这一篇就够了!

首次发表于2007年的Matplotlib,是Python的一个基于NumPy(由此可见Python数据分析真的离不开NumPy)的绘图工具包。它所提供的绘图,实际上是类似于MATLAB(工程级绘图工具)的纯Python第三方库。基本结构Figure(图形)一个Figure代表整个图像,是绘图的基础,可以包含一个或多个子图(Axes)。Axes(子图)Axes是Figure中的一个区域,包含数据点、坐标轴和标签,是具体绘制数据的对象。Artist(艺术家)

Skrrapper的博客 876

HFSS仿真PCB射频通路间的隔离度

本文介绍HFSS方式仿真带有器件的射频通路间的隔离度,可视为CST方式的补充,二者的结果相互参照。在前期靠仿真确认风险点时,可以作为一种较为直观和可信的手段。

sinat_15150363的博客 1527

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

8k Star!基于 Matplotlib 的数据可视化利器

【导语】:Seaborn 是一个可以实现数据可视化的 Python 库,它是基于 matplotlib 库封装而成的,同时还能兼容 pandas 数据结构。我们可以使用 Seaborn 来制作漂亮的数据图表,操作简单,易于上手。 提示:Seaborn 支持 Python 3.7+ ,已不再支持 Python 2。 简介 1、数据可视化的工具介绍 数据可视化是一种数据科学家将原始数据转化为图表的技术,这些图表能产生许多有价值的信息。图表降低了原始数据的复杂性,使用户更易理解。 有许多完成数据可视化的

osfront的博客 271

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Matplotlib,Python 数据可视化核心库!

摘要:Matplotlib是Python生态中最经典的数据可视化库,能够将数据转化为直观的折线图、柱状图等专业图表。文章介绍了Matplotlib的安装方法、4步基础用法(导入模块、准备数据、绘制图表、完善展示)以及高级功能(多子图布局、样式优化、3D可视化等)。通过电商数据分析案例展示了实际应用场景,Matplotlib适用于生活记录、职场报表、科研实验等各类数据可视化需求,是Python开发者必备的核心技能。

wz156的博客 507

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

数据剑舞,图表如潮!Matplotlib傲视数据可视化江湖

在代码的世界中,隐藏着一座神秘而神奇的画图殿堂,它就是Matplotlib。这座殿堂矗立在数据的海洋中,每一行代码都是一笔神奇的咒语,让数据在图像之间舞动,展现出无限可能。Matplotlib的大门上镶嵌着闪烁的彩虹宝石,每当有开发者走近,便散发出五彩斑斓的光芒,仿佛在诉说着这里的神秘。而在宫殿深处,站立着一座巨大的绘图笔,它拥有操控数据之力,将每一次绘图都变成了一场奇妙的冒险。当你走进Matplotlib的殿堂,就像踏入了一个充满魔力的世界,数据的颜色与形状便开始跃然纸上,呈现出无限可能的未来。

一点 1161

Matplotlib:数据可视化的魔法棒,让你的数据跳起舞来!

总结一下:Matplotlib不是什么高深魔法,而是每个数据爱好者的瑞士军刀!!!(学它绝对值得)从简单折线图到复杂子图,一步步来——没人天生就会!我的建议?今天就动手试试。复制上面的代码,改改数据,看看效果。遇到问题?Stack Overflow搜一搜(社区超友好!最后,真心话:在数据泛滥的时代,可视化能力就是超能力。它能帮你发现隐藏趋势、说服团队、甚至改变决策!(比如我用气温图说服老板买空调,夏天再也不蒸桑拿了)所以——别再犹豫了,打开Python,让Matplotlib给你的数据注入灵魂吧!!!

agilearchitect的博客 953

Python数据可视化:从Matplotlib到Plotly的进化之路![

Python 数据可视化工具经历了从静态到交互、从代码复杂到简洁优雅阶段代表工具特点1.0 基础时代Matplotlib万能但代码繁琐2.0 美学时代Seaborn快速出图,统计友好3.0 交互时代PlotlyWeb优先,交互丰富4.0 本地化时代Pyecharts中文友好,大屏首选不必纠结于"哪个最好"——根据你的场景选择最合适的,并在实践中逐步掌握多工具组合使用的能力。好的可视化不是炫技,而是让数据"说话"。当你选择了正确的工具,图表会自己讲述它的故事。

从零开始的1生活 419

Python Matplotlib进阶教程,数据可视化的新境界!

可以通过在plt.plot()函数中使用参数来自定义线条的样式和颜色。plt.plot(x, y, 'r--') # 'r--'表示红色虚线如果在图表中使用颜色映射,可以使用matplotlib的colormap模块来自定义颜色映射。# 自定义颜色映射colors = [(0, 0, 1), (0, 1, 0), (1, 0, 0)] # RGB颜色元组# 创建图表并使用自定义颜色映射# 显示图表plt.show()

涛哥聊Python 533

matplotlib柱状图上方显示数据_Python数据可视化之Matplotlib实现各种图表!

数据分析就是将数据以各种图表的形式展现给领导,供领导做决策用,因此熟练掌握饼图、柱状图、线图等图表制作是一个数据分析师必备的技能。Python有两个比较出色的图表制作框架,分别是Matplotlib和Pyechart。本文主要讲述使用Matplotlib制作各种数据图表。Matplotlib是最流行的用于绘制2D数据图表的Python库,能够在各种平台上使用,可以绘制散点图、柱状图、饼图等。1、柱...

weixin_39800918的博客 9862
上一篇: 一学就会的 Python 时间转化总结(超全)
下一篇: 摸清网络的第一步!
Wang_AI
博客等级 码龄12年 997粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值