Python绘制对角矩阵代码分享

代码思路 

这段代码的主要思路是生成一个模拟的企鹅数据集,并使用Seaborn库中的可视化函数对其进行可视化。数据集包括四个数值列(嘴长度、嘴深度、鳍长和体重)和一个分类列(物种),其中包含三种可能的物种。为了模拟现实数据集,该数据集中还添加了一些缺失值。接下来,代码使用不同的Seaborn可视化函数来对数据集进行可视化,包括散点图矩阵、小提琴图和带有核密度估计曲线的散点图矩阵。这些图表可以帮助我们更好地了解数据集中的模式和关系,并帮助我们进行进一步的分析。

这段代码主要使用了以下三个Python库:

  1. pandas: 用于数据处理和分析,可以读取、处理和存储各种类型的数据,包括CSV、Excel等格式。

  2. numpy: 一个Python数学库,提供了大量的数学函数和方法,尤其是对于数组和矩阵的操作。

  3. seaborn: 基于matplotlib库的高级数据可视化库,提供了许多直观、美观和有用的图表类型和样式。Seaborn旨在使可视化更加简单和快捷,尤其适用于数据科学和统计分析。

Seaborn是一个基于matplotlib库的Python高级数据可视化库,旨在提供一组美观、直观和有用的图表类型和样式。它专为数据科学和统计分析而设计,可以轻松地创建各种类型的图表,包括散点图、折线图、条形图、热力图、小提琴图等。Seaborn具有以下特点:

  1. 美观:Seaborn提供了一套默认的颜色主题和样式,使得图表看起来更加精美和专业。

  2. 直观:Seaborn提供了许多易于理解的图表类型和样式,以帮助用户更好地理解数据集中的模式和关系。

  3. 有用:Seaborn提供了许多有用的图表类型和方法,例如回归分析、聚类分析、分布分析等,可以帮助用户进行深入的数据分析和探索。

  4. 简单快捷:Seaborn提供了简单而灵活的API,使得用户可以快速构建和修改各种类型的图表,并且可以与pandas等其他Python库集成使用。

总之,Seaborn是一个非常实用和强大的数据可视化工具,可以帮助用户更好地理解数据集中的模式和关系,并支持进行深入的数据分析和探索。

代码分享

import pandas as pd
import numpy as np

# 创建示例数据集
data = {
    'species': ['Adelie', 'Chinstrap', 'Gentoo'] * 50,
    'bill_length_mm': np.random.normal(40, 5, 150),
    'bill_depth_mm': np.random.normal(17, 2, 150),
    'flipper_length_mm': np.random.normal(200, 20, 150),
    'body_mass_g': np.random.normal(4000, 500, 150)
}

penguins = pd.DataFrame(data)

# 将species列中的Chinstrap替换为NaN(为了在数据集中创建一些缺失值)
penguins['species'] = penguins['species'].replace('Chinstrap', np.nan)

# 随机选择一些行并添加缺失值以模拟现实数据集
random_rows = np.random.choice(penguins.shape[0], size=10, replace=False)
penguins.loc[random_rows, 'bill_length_mm'] = np.nan
penguins.loc[random_rows, 'bill_depth_mm'] = np.nan
penguins.loc[random_rows, 'flipper_length_mm'] = np.nan
penguins.loc[random_rows, 'body_mass_g'] = np.nan

# 保存数据集到CSV文件
penguins.to_csv('penguins_data.csv', index=False)


import seaborn as sns
import matplotlib.pyplot as plt

# 从CSV文件中加载数据集
penguins = pd.read_csv('penguins_data.csv')

# 绘制散点图矩阵
sns.pairplot(penguins, hue="species", diag_kind="hist")

# 显示图表
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt

# 从CSV文件中加载数据集
penguins = pd.read_csv('penguins_data.csv')

# 绘制小提琴图
sns.violinplot(x='species', y='body_mass_g', data=penguins)

# 显示图表
plt.show()

import seaborn as sns
import matplotlib.pyplot as plt

# 从CSV文件中加载数据集
penguins = pd.read_csv('penguins_data.csv')

# 绘制散点图矩阵
g = sns.pairplot(penguins, diag_kind="kde")
g.map_lower(sns.kdeplot, levels=4, color=".2")

# 显示图表
plt.show()

代码结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安宁ᨐ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值