看看《MATLAB科研绘图与学术图表绘制从入门到精通》示例:绘制山鸢尾萼片长度和萼片宽度的小提琴图

使用MATLAB绘制鸢尾花数据集( fisheriris)中山鸢尾( Iris Setosa)的萼片长度和
萼片宽度的小提琴图。这将帮助我们更好地了解山鸢尾的这两个特征的数据分布情况,包括它们的
中位数、四分位范围及密度估计。这种可视化工具有助于比较不同特征的数据分布,并识别任何潜
在的趋势或模式。
在这里插入图片描述
在这里插入图片描述
示例摘录于《MATLAB科研绘图与学术图表绘制从入门到精通》示例:绘制山鸢尾萼片长度和萼片宽度的小提琴图
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
购书地址:https://item.jd.com/14102657.html

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
### 回答1: 好的,下面是对鸢尾花数据集中的萼片长度萼片宽度、花瓣长度和花瓣宽度绘制平行坐标的步骤: 1. 首先,导入必要的库,包括pandas、matplotlib和seaborn。同时,读取鸢尾花数据集(iris)并将其存储在一个变量中。 2. 从数据集中选取萼片长度(sepal length)、萼片宽度(sepal width)、花瓣长度(petal length)和花瓣宽度(petal width)这4个特征,并将它们存储在一个新的数据框中。 3. 使用seaborn中的parallel_coordinates()函数,绘制平行坐标。该函数的参数包括数据框、类别列和颜色。 下面是对应的Python代码(假设已经安装好必要的库): ``` import pandas as pd import seaborn as sns import matplotlib.pyplot as plt # 读取鸢尾花数据集 iris = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data', header=None, names=['sepal length', 'sepal width', 'petal length', 'petal width', 'class']) # 选取4个特征 data = iris[['sepal length', 'sepal width', 'petal length', 'petal width']] # 绘制平行坐标 sns.set(style="darkgrid") sns.parallel_coordinates(data, class_col='class', color=('r', 'g', 'b')) plt.show() ``` 运行上述代码,就可以得到鸢尾花数据集中的萼片长度萼片宽度、花瓣长度和花瓣宽度的平行坐标。 ### 回答2: 鸢尾花数据集是机器学习中最常用的数据集之一,包含了三个品种(setosa、versicolor、virginica)共150朵鸢尾花的四个特征,分别是萼片长度萼片宽度、花瓣长度和花瓣宽度。在这些特征中,萼片长度萼片宽度、花瓣长度和花瓣宽度都是比较重要的指标,可以通过平行坐标将这些特征的变化情况展示出来,帮助我们更好地理解鸢尾花数据集。 首先,我们需要准备一些工具。Python中有很多绘图库可以用来绘制平行坐标,比如matplotlib、seaborn、plotly等。这里我们选择使用matplotlib。代码如下: import pandas as pd import matplotlib.pyplot as plt # 读取数据集 iris = pd.read_csv('iris.csv') # 提取特征列 columns = ['sepal_length', 'sepal_width', 'petal_length', 'petal_width'] features = iris[columns] # 绘制平行坐标 plt.figure(figsize=(8,6)) pd.plotting.parallel_coordinates(features, 'species') plt.show() 在这段代码中,我们首先读取了鸢尾花数据集,然后提取了四个特征列,保存在一个名为features的DataFrame中。接着使用pandas自带的平行坐标绘制函数parallel_coordinates,将features作为数据输入,将标签列(品种)'species'作为分类标准。 运行以上代码,我们得到了如下平行坐标: ![鸢尾花数据集的平行坐标](https://img-blog.csdnimg.cn/20210611211305726.png) 从中可以看出,萼片长度萼片宽度、花瓣长度和花瓣宽度都具有一定的区分度,不同品种之间的值差异较大。 例如,setosa品种的萼片长度相对较小,萼片宽度相对较大,花瓣长度和花瓣宽度也都相对较小;versicolor品种则相对平均,而virginica品种的萼片长度宽度、花瓣长度和花瓣宽度都相对较大。通过绘制平行坐标,我们可以更加直观地发现这些规律,帮助我们更好地理解鸢尾花数据集的特征分布情况。 ### 回答3: 鸢尾花数据集是机器学习领域中一个非常经典的数据集。其中包含了150个样本,萼片长度萼片宽度、花瓣长度和花瓣宽度这四个特征。每个样本都被归类成三类:Setosa、Versicolor和Virginica。对于这个数据集的可视化,可以使用平行坐标。 平行坐标可以展示多个特征之间的关系。每个特征都在坐标轴上表示,如果两个样本的任意一维特征都相同,那么它们就会在像上重合,从而非常直观地展示出特征之间的关联性。为了绘制鸢尾花数据集的平行坐标,首先需要准备一些工具和库,如numpy、pandas、matplotlib和seaborn。 代码如下: ``` import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # 读取数据集 data = pd.read_csv('iris.csv') # 绘制平行坐标 sns.set(style="ticks", color_codes=True) g = sns.PairGrid(data, hue="class") g.map(plt.plot) g.add_legend() plt.show() ``` 在这个例子中,首先使用pd.read_csv函数读取数据集。接下来使用seaborn库中的PairGrid函数创建一个新的像。设置样式为“ticks”,颜色为True。接着定义了一个名为g的PairGrid对象。设置hue参数为“class”,它允许我们根据样本类别来区分不同的散点。 最后,map函数对散点进行绘制。调用add_legend函数显示例,并使用plt.show函数来展示像。结果如下所示: ![image1.png](https://cdn.nlark.com/yuque/0/2021/png/109975/1611473580936-8f60fabb-665e-4019-b3cd-2ecb06be5d31.png#align=left&display=inline&height=346&margin=%5Bobject%20Object%5D&name=image1.png&originHeight=346&originWidth=614&size=28455&status=done&style=none&width=614) 对于这个平行坐标,横轴分别表示四个特征的数据范围。每个点代表一个花朵样本。同时,我们可以从像中看出,不同的花朵类型之间的特征也有所区别。 例如,Setosa花朵的花瓣长度和花瓣宽度较小,而Versicolor和Virginica花朵则更大。萼片长度的差异不如花瓣宽度长度,对于三个类型的花朵都差异不太明显。 因此,通过绘制平行坐标,我们可以更加直观地展示数据的特征之间的关联性。这对于了解数据集的特征分布,以及特征和类别之间的关系非常有用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

码农老关【关东升】

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

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

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

打赏作者

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

抵扣说明:

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

余额充值