Python机器学习实验 Python 数据可视化

1.实验目的

掌握 Matplotlib 数据可视化的常用方法。

2.实验内容

1.  绘制鸢尾花数据集的特征分布图

说明:鸢尾花是单子叶百合目花卉,是一种比较常见的花,鸢尾花的品种较多。 鸢尾花数据集最初由 Edgar Anderson  测量得到,而后在著名的统计学家和生物学

家 R.A Fisher 于 1936 年发表的文章中被使用。它是一个很小的数据集,仅有 150 行,5

列。该数据集的四个特征属性的取值都是数值型的,他们具有相同的量纲,不需要做 任何标准化的处理,第五列为通过前面四列所确定的鸢尾花所属的类别名称。

鸢尾花数据集有 4 个属性列和一个品种类别列:sepal length(萼片长度)、sepal width(萼片宽度)、petal length(花瓣长度)、petal width (花瓣宽度),单位都是 厘米。3 个品种类别是 Setosa、Versicolour、Virginica,样本数量 150 个,每类 50 个。

(1)使用 pandas.read_csv()函数读取“iris.csv”。 操作提示:

数据没有标题,设置参数 header=None。同时手动设置标题,如:df.columns = ['sepalLength','sepalWidth','petalLength','petalWidth','kind']。

图 5-1   鸢尾花数据集

#使用pandas.read_csv()函数读取iris.csv
import pandas as pd
df = pd.read_csv(r'D:\iris.csv',header=None)
df.columns = ['sepalLength','sepalWidth','petalLength','petalWidth','kind']
print(df)

2)  绘制包含两个子图的图表。

先绘制第一幅子图,显示花瓣宽度和花萼宽度的对比散点图;再绘制第二幅子

图,显示花瓣宽度的条形图。完成效果如图 5-2 所示。

操作提示:

条形图的 X 轴上的数值数量与鸢尾花数据集的样本数量保存一致。

图 5-2   鸢尾花图表

#绘制包含两个子图的图表,第一幅子图,显示花瓣宽度和花萼宽度的对比散点图,第二幅子图,显示花瓣宽度的条形图
import matplotlib.pyplot as plt
plt.scatter(df['sepalWidth'],df['petalWidth'])
plt.xlabel('sepalWidth')
plt.ylabel('petalWidth')
plt.title('花萼/花瓣宽度散点图')
plt.show()
# 为了条形图,我们需要创建一个与样本数量一致的索引序列
index = range(len(df['petalWidth']))
plt.bar(index,df['petalWidth'])
plt.xlabel('index')
plt.ylabel('petalWidth')
plt.title('花萼/花瓣宽度条形图')
plt.show()

2.  多个图表的绘制

生成 0 到 10、间隔 0.1 的数值序列作为 x,绘制如下图所示的图表,各子图的内容 分别为:

第一幅子图:计算对应的 cos(x)函数值,根据数值和 cos 值绘制曲线图。 第二幅子图:绘制 y=2x、y=3x、y=4x 的直线组。

第三幅子图:以数值序列作为横轴,100 以内的随机作为纵轴,绘制绿色、“+”号 的散点图。

第四幅子图:绘制 y=sin(x)*ex/100 的曲线。

#生成 0 到 10、间隔 0.1 的数值序列作为 x,绘制如下图所示的图表,各子图的内容 分别为:第一幅子图:计算对应的 cos(x)函数值,根据数值和 cos 值绘制曲线图。 第二幅子图:绘制 y=2x、y=3x、y=4x 的直线组。第三幅子图:以数值序列作为横轴,100 以内的随机作为纵轴,绘制绿色、“+”号 的散点图。第四幅子图:绘制 y=sin(x)*ex/100 的曲线。
import numpy as np
import matplotlib.pyplot as plt# 生成0到10、间隔0.1的数值序列
x = np.arange(0, 10.1, 0.1)# 第一幅子图:计算cos(x)并绘制曲线图
plt.subplot(4, 1, 1)  # 4行1列的子图,当前是第1个子图
plt.plot(x, np.cos(x))
plt.title('y = cos(x)')
plt.xlabel('x')
plt.ylabel('y')# 第二幅子图:绘制y=2x, y=3x, y=4x的直线组
plt.subplot(4, 1, 2)  # 4行1列的子图,当前是第2个子图
for slope in [2, 3, 4]:plt.plot(x, slope * x, label=f'y={slope}x')
plt.title('y = mx Lines')
plt.xlabel('x')
plt.ylabel('y')
plt.legend()# 第三幅子图:以数值序列作为横轴,100以内的随机数作为纵轴,绘制绿色、“+”号的散点图
plt.subplot(4, 1, 3)  # 4行1列的子图,当前是第3个子图
y_random = np.random.rand(len(x)) * 100  # 生成100以内的随机数
plt.scatter(x, y_random, color='green', marker='+')
plt.title('Random Scatter Plot')
plt.xlabel('x')
plt.ylabel('y')# 第四幅子图:绘制y=sin(x)*exp(x)/100的曲线
plt.subplot(4, 1, 4)  # 4行1列的子图,当前是第4个子图
y = np.sin(x) * np.exp(x) / 100
plt.plot(x, y)
plt.title('y = sin(x) * exp(x) / 100')
plt.xlabel('x')
plt.ylabel('y')# 调整子图间距并显示图表
plt.tight_layout()
plt.show()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/6873.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入学习和理解Django模板层:构建动态页面

title: 深入学习和理解Django模板层:构建动态页面 date: 2024/5/5 20:53:51 updated: 2024/5/5 20:53:51 categories: 后端开发 tags: Django模板表单处理静态文件国际化性能优化安全防护部署实践 第一章:模板语法基础 Django模板语法介绍 Django模…

每天五分钟深度学习:数学中常见函数中的导数

本文重点 导数是微积分学中的一个核心概念,它描述了函数在某一点附近的变化率。在物理学、工程学、经济学等众多领域中,导数都发挥着极其重要的作用。本文旨在详细介绍数学中常见函数的导数,以期为读者提供一个全面而深入的理解。 数学中常见的导数 常数函数的导数 对于常数…

ctfshow 框架复现

文章目录 web 466web 467web 468web469web 470web 471web 472web 473web 474web 475web 476 web 466 Laravel5.4版本 &#xff0c;提交数据需要base64编码 代码审计学习—Laravel5.4 - 先知社区 (aliyun.com) 用第二条链子 反序列化格式 /admin/序列化串base64<?php na…

(论文阅读-多目标优化器)Multi-Objective Parametric Query Optimization

目录 摘要 一、简介 1.1 State-of-the-Art 1.2 贡献和大纲 二、定义 三、相关工作 四、问题分析 4.1 分析 4.2 算法设计影响 五、通用算法 5.1 算法概述 5.2 完备性证明 六、分段线性代价函数算法 6.1 数据结构 6.2 基本运算实现 6.3 复杂度分析 七、实验评估 …

FR-TSN4206获得“时间敏感网络产业链名录计划”测试认证证书,TSN交换机助力智能工业发展

TSN技术&#xff0c;即时间敏感网络技术&#xff0c;已成为智能工业、自动驾驶等领域的核心。它通过时钟同步、数据调度等功能&#xff0c;确保低延迟、高可靠性的数据传输。 为推动TSN技术在我国的发展&#xff0c;工业互联网产业联盟联合多家单位启动了“时间敏感网络产业链名…

Amazon EKS创建EFS存储卷

1、创建Amazon EFS CSI 驱动程序 亚马逊相关文档 在 Select trusted entity&#xff08;选择受信任的实体&#xff09;页面上操作 在 Add permissions&#xff08;添加权限&#xff09;页面上筛选AmazonEFSCSIDriverPolicy操作 记得将AmazonEBSVolumePolicy添加到我们创建的…

Colab/PyTorch - Getting Started with PyTorch

Colab/PyTorch - Getting Started with PyTorch 1. 源由2. 概要2.1 PyTorch是什么&#xff1f;2.2 为什么学习PyTorch&#xff1f;2.3 PyTorch库概览 3. 步骤4. 预期&展望5. 总结6. 参考资料 1. 源由 世界在发展&#xff0c;为其服务的技术也在不断演变。每个人都要跟上技…

Docker-Compose 容器集群的快速编排

Docker-compose 简介 Docker-Compose项目是Docker官方的开源项目&#xff0c;负责实现对Docker容器集群的快速编排。 Docker-Compose将所管理的容器分为三层&#xff0c;分别是 工程&#xff08;project&#xff09;&#xff0c;服务&#xff08;service&#xff09;以及容器&…

2024阿里云ctf-web-chain17学习

agent jdk17依赖有h2思路清晰打jdbc attack <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/com.aliba…

AI图书推荐:ChatGPT在真实商业世界中的应用

《ChatGPT在真实商业世界中的应用》 (Unleashing The Power of ChatGPT: A Real World Business Applications)首先概述了ChatGPT及其在对话式人工智能领域的影响。接着&#xff0c;你将深入了解ChatGPT的技术方面&#xff0c;理解机器学习算法和自然语言处理如何在后台工作。然…

Raft共识算法笔记,MIT6.824,

处理leader和follow的一个重要思路是多数投票&#xff0c;确保系统中存在奇数个服务器&#xff08;例如3台&#xff09;。进行任何操作都需要来自多数服务器的同意&#xff0c;例如3台服务器中的2台。如果没有多数同意&#xff0c;系统会等待。为什么多数投票有助于避免脑裂问题…

【Linux】目录和文件相关的命令,补充:centos7系统目录结构

【Linux】Linux操作系统的设计理念之一就是“一切皆文件”&#xff08;Everything is a file&#xff09;&#xff0c;即将设备、文件等都当作“文件”处理。 “文件”主要类型有&#xff1a;目录&#xff08;即文件夹&#xff09;&#xff0c;链接文档&#xff08;即快捷方式…

【论文复现】Graph Attention Networks图注意力神经网络

图注意力神经网络 前言一、论文解读1.1 模型架构1.2 数学推导 二、代码复现2.1 数据准备2.1.1 数据转化2.1.2 创建数据集 2.2 模型构建2.2.1 参数设置2.2.2 模型代码2.2.3 pytorch官方GAT源码实现 2.3 模型训练 三、结果展示3.1 复现结果3.2 论文结果 四、代码细节代码链接 前言…

【Python项目】基于opencv的的【疲劳检测系统】

技术简介&#xff1a;使用Python技术、OpenCV图像处理库、MYSQL数据库等实现。 系统简介&#xff1a;用户可以通过登录系统平台实现实时的人脸照片的拍摄和上传&#xff0c;结合上传图像的内容进行后台的图像预处理和运算分析&#xff0c;用户可以通过照片分析界面查看到当前检…

数学中的极值

在数学领域中&#xff0c;极值是一个重要的概念&#xff0c;它不仅在纯数学理论研究中占据核心地位&#xff0c;还在实际应用中发挥着巨大作用。从微积分的基本定理到优化问题的求解&#xff0c;从物理学的能量守恒到经济学的边际分析&#xff0c;极值理论无处不在。本文将详细…

【MySQL】第一次作业

【MySQL】第一次作业 1、在官网下载安装包2、解压安装包&#xff0c;创建一个dev_soft文件夹&#xff0c;解压到里面。3、创建一个数据库db_classes4、创建一行表db_hero5、将四大名著中的常见人物插入这个英雄表 写一篇博客&#xff0c;在window系统安装MySQL将本机的MySQL一定…

求解亲和数

【问题描述】 古希腊数学家毕达哥拉斯在自然数研究中发现&#xff0c;220的所有真约数&#xff08;即不是自身 的约数&#xff09;之和为&#xff1a; 1245101120224455110284。而284的所有真约数为1、2、4、71、142&#xff0c;加起来恰好为220。人 们对这样的数感到很惊奇&am…

Spring Cloud架构进化实操:Eureka、Apollo、OpenFeign、Ribbon、Zuul组件

文章目录 前言一、引出二、服务注册与发现2.1 创建Eureka注册中心2.1.1 引入pom依赖2.1.2 配置yaml2.1.3 启动服务21.4 测试访问 2.2 创建服务提供者2.2.1 配置yaml2.2.2 启动服务2.2.3 测试访问 2.3 创建服务消费者2.3.1 服务提供者接口2.3.2 服务消费者调用接口 三、负载均衡…

用户中心(优化)

文章目录 功能扩充管理员修改用户信息管理员删除用户管理员添加用户添加个人主页&#xff0c;可以完善个人信息&#xff08;上传头像没有实现&#xff09;添加默认头像打造一个所有用户可发帖的页面前端页面&#xff0c;√后端建表&#xff0c;接口&#xff0c;√前后端联调√ …

W801学习笔记二十:宋词学习应用

前三章完成了唐诗的应用&#xff0c;本章将实现宋词的学习应用。 宋词与唐诗的区别不大&#xff0c;马上开始。 1、我们需要参考前面唐诗的方式&#xff0c;把宋词文本下载下来&#xff0c;并进行格式整理。 W801学习笔记十七&#xff1a;古诗学习应用——上 2、在菜单中添加…