浅谈四种用Python实现数据可视化的快速简便方法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情


前言

数据可视化是数据科学或机器学习项目中十分重要的一环。通常,你需要在项目初期进行探索性的数据分析(EDA),从而对数据有一定的了解,而且创建可视化确实可以使分析的任务更清晰、更容易理解,特别是对于大规模的高维数据集。在项目接近尾声时,以一种清晰、简洁而引人注目的方式展示最终结果也是非常重要的,让你的受众(通常是非技术人员的客户)能够理解。


热力图

热力图(Heat Map)是数据的一种矩阵表示方法,其中每个矩阵元素的值通过一种颜色表示。不同的颜色代表不同的值,通过矩阵的索引将需要被对比的两项或两个特征关联在一起。热力图非常适合于展示多个特征变量之间的关系,因为你可以直接通过颜色知道该位置上的矩阵元素的大小。通过查看热力图中的其他点,你还可以看到每种关系与数据集中的其它关系之间的比较。颜色是如此直观,因此它为我们提供了一种非常简单的数据解释方式。

现在让我们来看看实现代码。与「matplotlib」相比,「seaborn」可以被用于绘制更加高级的图形,它通常需要更多的组件,例如多种颜色、图形或变量。「matplotlib」可以被用于显示图形,「NumPy」可被用于生成数据,「pandas」可以被用于处理数据!绘图只是「seaborn」的一个简单的功能。

\# Importing libs
import seaborn as sns
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# Create a random dataset
data = pd.DataFrame(np.random.random((10,6)), columns=\["Iron Man","Captain America","Black Widow","Thor","Hulk", "Hawkeye"\])

print(data)

# Plot the heatmap
heatmap\_plot = sns.heatmap(data, center=0, cmap='gist\_ncar')

plt.show()

二维密度图

二维密度图(2D Density Plot)是一维版本密度图的直观扩展,相对于一维版本,其优点是能够看到关于两个变量的概率分布。例如,在下面的二维密度图中,右边的刻度图用颜色表示每个点的概率。我们的数据出现概率最大的地方(也就是数据点最集中的地方),似乎在 size=0.5,speed=1.4 左右。正如你现在所知道的,二维密度图对于迅速找出我们的数据在两个变量的情况下最集中的区域非常有用,而不是像一维密度图那样只有一个变量。当你有两个对输出非常重要的变量,并且希望了解它们如何共同作用于输出的分布时,用二维密度图观察数据是十分有效的。

事实再次证明,使用「seaborn」编写代码是十分便捷的!这一次,我们将创建一个偏态分布,让数据可视化结果更有趣。你可以对大多数可选参数进行调整,让可视化看结果看起来更清楚。

\# Importing libs
import seaborn as sns
import matplotlib.pyplot as plt
from scipy.stats import skewnorm

# Create the data
speed = skewnorm.rvs(4, size=50) 
size = skewnorm.rvs(4, size=50)

# Create and shor the 2D Density plot
ax = sns.kdeplot(speed, size, cmap="Reds", shade=False, bw=.15, cbar=True)
ax.set(xlabel='speed', ylabel='size')
plt.show()

蜘蛛网图

蜘蛛网图(Spider Plot)是显示一对多关系的最佳方法之一。换而言之,你可以绘制并查看多个与某个变量或类别相关的变量的值。在蜘蛛网图中,一个变量相对于另一个变量的显著性是清晰而明显的,因为在特定的方向上,覆盖的面积和距离中心的长度变得更大。如果你想看看利用这些变量描述的几个不同类别的对象有何不同,可以将它们并排绘制。在下面的图表中,我们很容易比较复仇者联盟的不同属性,并看到他们各自的优势所在!(请注意,这些数据是随机设置的,我对复仇者联盟的成员们没有偏见。)

在这里,我们可以直接使用「matplotlib」而非「seaborn」来创建可视化结果。我们需要让每个属性沿圆周等距分布。我们将在每个角上设置标签,然后将值绘制为一个点,它到中心的距离取决于它的值/大小。最后,为了显示更清晰,我们将使用半透明的颜色来填充将属性点连接起来得到的线条所包围的区域。

\# Import libs
import pandas as pd
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt

# Get the data
df=pd.read\_csv("avengers\_data.csv")
print(df)

"""
   #             Name  Attack  Defense  Speed  Range  Health
0  1         Iron Man      83       80     75     70      70
1  2  Captain America      60       62     63     80      80
2  3             Thor      80       82     83    100     100
3  3             Hulk      80      100     67     44      92
4  4      Black Widow      52       43     60     50      65
5  5          Hawkeye      58       64     58     80      65

"""

# Get the data for Iron Man
labels=np.array(\["Attack","Defense","Speed","Range","Health"\])
stats=df.loc\[0,labels\].values

# Make some calculations for the plot
angles=np.linspace(0, 2\*np.pi, len(labels), endpoint=False)
stats=np.concatenate((stats,\[stats\[0\]\]))
angles=np.concatenate((angles,\[angles\[0\]\]))

# Plot stuff
fig = plt.figure()
ax = fig.add\_subplot(111, polar=True)
ax.plot(angles, stats, 'o-', linewidth=2)
ax.fill(angles, stats, alpha=0.25)
ax.set\_thetagrids(angles \* 180/np.pi, labels)
ax.set\_title(\[df.loc\[0,"Name"\]\])
ax.grid(True)

plt.show()

树状图

我们从小学就开始使用树状图(Tree Diagram)了!树状图是自然而直观的,这使它们容易被解释。直接相连的节点关系密切,而具有多个连接的节点则不太相似。在下面的可视化结果中,我根据 Kaggle 的统计数据(生命值、攻击力、防御力、特殊攻击、特殊防御、速度)绘制了一小部分口袋妖怪游戏的数据集的树状图。

因此,统计意义上最匹配的口袋妖怪将被紧密地连接在一起。例如,在图的顶部,阿柏怪 和尖嘴鸟是直接连接的,如果我们查看数据,阿柏怪的总分为 438,尖嘴鸟则为 442,二者非常接近!但是如果我们看看拉达,我们可以看到其总得分为 413,这和阿柏怪、尖嘴鸟就具有较大差别了,所以它们在树状图中是被分开的!当我们沿着树往上移动时,绿色组的口袋妖怪彼此之间比它们和红色组中的任何口袋妖怪都更相似,即使这里并没有直接的绿色的连接。

对于树状图,我们实际上需要使用「Scipy」来绘制!读取数据集中的数据之后,我们将删除字符串列。这么做只是为了使可视化结果更加直观、便于理解,但在实践中,将这些字符串转换为分类变量会得到更好的结果和对比效果。我们还设置了数据帧的索引,以便能够恰当地将其用作引用每个节点的列。最后需要告诉大家的是,在「Scipy」中计算和绘制树状图只需要一行简单的代码。

\# Import libs
import pandas as pd
from matplotlib import pyplot as plt
from scipy.cluster import hierarchy
import numpy as np

# Read in the dataset
# Drop any fields that are strings
# Only get the first 40 because this dataset is big
df = pd.read\_csv('Pokemon.csv')
df = df.set\_index('Name')
del df.index.name
df = df.drop(\["Type 1", "Type 2", "Legendary"\], axis=1)
df = df.head(n=40)

# Calculate the distance between each sample
Z = hierarchy.linkage(df, 'ward')

# Orientation our tree
hierarchy.dendrogram(Z, orientation="left", labels=df.index)

plt.show()

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python基础学习视频

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python工具包+项目源码合集
①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

六、Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

python可视化开发 pyqt5的使用,qt可视化,信号与槽 阅读详情

相关推荐

Python Matplotlib实现数据可视化的5种方法详解

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

2301_80240808的博客 2215

Python 数据可视化详解

数据可视化是一种将庞杂抽象的数据转化为直观易懂的图形的数据呈现技术,它能帮助我们快速把握数据的分布和规律,更加轻松地理解和探索信息。在当今这个信息爆炸的时代,数据可视化越来越受重视。

悦分享 2万+

案例上手 Python 数据可视化

课程亮点 6 个常用的数据可视化工具使用方法 20 个案例贯穿各个工具的学习过程 基于 GUI / HTML / Web 网站多种绘图风格 中、美、日三国不同思想的制图工具 从静态到交互,满足不同需要的图示 课程背景 数据可视化是数据分析和机器学习的重要环节,比如数据清洗、特征工程、机器学习、数据分析(特别是报告)、评估等环节都会用到“数据可视化”技术。 数据可视化同时还广泛存在于各...

GitChat 3万+

可视化分类矩阵 Python

假设我们有一个二分类问题,其中真实标签为[0, 1, 0, 1, 1],模型的预测结果为[1, 1, 0, 1, 0]。我们可以通过观察矩阵的对角线元素来评估模型的准确性,对角线上的数字表示模型正确分类的样本数量。运行代码后,我们将看到一个带有颜色编码的热力图,它表示了混淆矩阵的内容。矩阵的每个单元格中的数字表示相应类别的样本数量,颜色的深浅表示数量的多少。函数计算混淆矩阵,并使用Matplotlib库绘制热力图来显示混淆矩阵的内容。通过可视化混淆矩阵,我们可以更好地理解模型在不同类别上的分类性能。

TechSavant的博客 293

Python 数据可视化

首先,导入所需模块和库并读取数据。最后,使用 `plot_surface()` 函数画出 3D 表面图,并使用 `savefig()` 函数将生成的图像保存到本地磁盘,并使用 `show()` 函数展示可视化结果。首先,使用 `numpy.random.randn()` 函数生成一个包含100,000个元素的随机数数组 x,并由 y = (1.5 * x) + np.random.randn(n) 计算出相应的 y 值,在 plt.plot(x,y,'.r') 中绘制二维散点图。

shaozheng0503的博客 5486

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

Python数据可视化常用方法

xiaolinyui的博客 1万+

四种快速易用的Python数据可视化方法

数据可视化是数据科学或机器学习项目中十分重要的一环。通常,你需要在项目初期进行探索性的数据分析(EDA),从而对数据有一定的了解,而且创建可视化确实可以使分析的任务更清晰、更容易理解,特别是对于大规模的高维数据集。在项目接近尾声时,以一种清晰、简洁而引人注目的方式展示最终结果也是非常重要的,让你的受众(通常是非技术人员的客户)能够理解。

m0_72557783的博客 6170

8 种快速易用的Python Matplotlib数据可视化方法

Python的Matplotlib库是数据可视化的强大工具,能够将复杂数据转化为直观的图表。本文介绍了8种常用的Matplotlib可视化方法,包括折线图、柱状图、散点图、饼图、箱线图、直方图和条形图,每种方法都附有代码示例。这些方法简单易用,适用于趋势分析、对比分析、相关性分析、占比分析和数据分布分析等多种场景。掌握这些技巧,不仅能提升数据分析效率,还能让数据故事更具说服力和影响力。无论是学生、数据分析师还是程序员,Matplotlib都是不可或缺的工具,帮助你在数据驱动的时代中脱颖而出。

朱雀随云记的博客 1923

python 财务分析可视化方法_Python数据可视化四种简易方法

Python数据可视化四种简易方法作者:PHPYuan 时间:2018-11-28 03:40:43摘要: 本文讲述了热图、二维密度图、蜘蛛图、树形图这四种Python数据可视化方法数据可视化是任何数据科学或机器学习项目的一个重要组成部分。人们常常会从探索数据分析(EDA)开始,来深入了解数据,并且创建可视化确实有助于让问题更清晰和更容易理解,尤其是对于那些较大的高维度数据集。在项目结束的时候...

weixin_39538607的博客 1493

4种快速易用的Python数据可视化方法

在蜘蛛网图中,一个变量相对于另一个变量的显著性是清晰而明显的,因为在特定的方向上,覆盖的面积和距离中心的长度变得更大。例如,在图的顶部,阿柏怪 和尖嘴鸟是直接连接的,如果我们查看数据,阿柏怪的总分为 438,尖嘴鸟则为 442,二者非常接近!不同的颜色代表不同的值,通过矩阵的索引将需要被对比的两项或两个特征关联在一起。Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

zhishi0000的博客 1368

python数据可视化是什么_Python数据可视化四种简易方法

数据可视化是任何数据科学或机器学习项目的一个重要组成部分。人们常常会从探索数据分析(EDA)开始,来深入了解数据,并且创建可视化确实有助于让问题更清晰和更容易理解,尤其是对于那些较大的高维度数据集。在项目结束的时候,能够以清晰的、简洁的和令人信服的方式呈现最终结果,这是非常重要的,让你的用户能够理解和明白。你可能已经看过了我之前的文章《5种快速和简单的Python数据可视化方法(含代码)》(5 Q...

weixin_39757040的博客 217

5个快速而简单的数据可视化方法Python代码

点击上方“AI公园”,关注公众号,选择加“星标“或“置顶”作者:George Seif编译:ronghuaiyang导读数据可视化方法,做大数据的人不可错过,直接把代码...

AI公园 648

python做前端可视化_Python数据可视化四种简易方法

摘要:本文讲述了热图、二维密度图、蜘蛛图、树形图这四种Python数据可视化方法数据可视化是任何数据科学或机器学习项目的一个重要组成部分。人们常常会从探索数据分析(EDA)开始,来深入了解数据,并且创建可视化确实有助于让问题更清晰和更容易理解,尤其是对于那些较大的高维度数据集。在项目结束的时候,能够以清晰的、简洁的和令人信服的方式呈现最终结果,这是非常重要的,让你的用户能够理解和明白。你可能已...

weixin_39520393的博客 895

数据可视化实现方法

本文介绍了数据可视化的主流实现方法,包括编程式(如Python的Matplotlib、JavaScript的D3.js)和工具式(如Tableau、PowerBI),并详细列举了相关工具、组件和插件。文章还提供了Python和JavaScript的示例代码,展示如何生成基本图表。数据可视化能帮助用户理解复杂数据,实现方法需根据项目需求选择编程库、可视化工具或跨平台应用。建议从基础库开始,逐步掌握各类可视化技术。

ponygame的博客 1251

4种更快更简单实现 Python 数据可视化方法

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

2401_86071296的博客 1248

Python数据分析实战(3)Python实现数据可视化

数据可视化可以进一步理解数据,matplotlib、pandas可以单独或结合使用。matplotlib是著名的绘图库,可以用pyplot等模块画图,画图的步骤包括导库、创建画图对象、设置属性等,还可以画子图。常见的作图类型包括散点图、条形图、饼图和三维图等;pandas画图主要包括累和图、柱状图和矩阵散点图等,可以分别为序列和数据帧画图;两者结合使用效果更好。订单数据可视化可以展示GMV、商家趋势、订单来源等,并制作数据仪表盘。泰坦尼克号灾难数据主要展示男女乘客比例、船费散点图和直方图、生还人数等。

CUFEECR的博客 4万+

数据可视化-python+MySQL+FineBI-快速搭建

数据可视化-python+MySQL+FineBI-快速搭建 目录 地图-数据可视化-python+MySQL+FineBI-快速搭建 效果图 数据来源 如何查找数据 API数据分析-地方市 API数据分析-省份 数据处理-python 数据处理-目录结构 数据处理-思路分析 数据处理-公共类 数据处理-全省数据 数据处理-新闻列表数据 数据处理-全国情况数据 数据处理-地方市数据 数据处理-统一调动 数据处理-MySQL 数据处理-目录结构SQL 数据处

测试工程师 4302

数据可视化python_大数据分析之Python数据可视化四种简易方法

本篇文章探讨了大数据分析之Python数据可视化四种简易方法,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。<数据可视化是任何数据科学或机器学习项目的一个重要组成部分。人们常常会从探索数据分析(EDA)开始,来深入了解数据,并且创建可视化确实有助于让问题更清晰和更容易理解,尤其是对于那些较大的高维度数据集。在项目结束的时候,能够以清晰的、简洁的和令人信服的方式呈现最终...

weixin_39851008的博客 961
上一篇: Python新手易混淆点,快来看看,有没有你不知道的!
下一篇: Python新手必看!常用知识点梳理总结。
一秋的编程笔记
博客等级 码龄3年 1574粉丝 319原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值