python绘图工具matpoltlib的常用操作

news2024/11/27 12:57:40

目录

    • 1.matplotlib概述
    • 2.风格设置
    • 3.条形图
    • 4.盒图
    • 5.直方图和散点图
    • 6.3D图
    • 7.pie图和布局
    • 8.Pandas与sklearn结合实例

1.matplotlib概述

Matplotlib 是一个用 Python 编程语言编写的、基于 NumPy 的开源数据可视化库。它提供了一套完整的兼容 MATLAB 的 API,支持各种常用的二维数据可视化、三维数据可视化以及动画制作等功能,能够轻松生成高质量的数据图表和图形。下面主要介绍其中的pyplot的常用绘图操作。
在这里插入图片描述
在这里插入图片描述
常用的线条样式

字符类型字符类型
'-' 实线'--'虚线
'-.'虚点线':'点线
'.'','像素点
'o'圆点'v'下三角点
'^'上三角点'<'左三角点
'>'右三角点'1'下三叉点
'2'上三叉点'3'左三叉点
'4'右三叉点's'正方点
'p'五角点'*'星形点
'h'六边形点1'H'六边形点2
'+'加号点'x'乘号点
'D'实心菱形点'd'瘦菱形点
'_'横线点

在这里插入图片描述

表示颜色的字符参数有:

字符颜色
‘b’蓝色,blue
‘g’绿色,green
‘r’红色,red
‘c’青色,cyan
‘m’品红,magenta
‘y’黄色,yellow
‘k’黑色,black
‘w’白色,white

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在 Matplotlib 的 pyplot 模块中,gca() 函数可以获取当前正在使用的 Axes 对象,或创建一个新的 Axes 对象并将其设置为当前 Axes。
gca() 可以用来获取和设置图表中的坐标轴对象(Axes)以及它们的属性。它可以内嵌于其他绘图函数中,用于获取当前的 Axes 对象以进行进一步设置,例如,设置坐标轴范围、标签、标题、刻度、网格线等。当然,如果图表中没有 Axes 对象,则需要通过 add_axes() 或其他函数创建一个新的 Axes 对象,然后将它设置为当前对象。

import numpy as np
import matplotlib.pyplot as plt

# 生成一组数据
x = np.linspace(-10, 10, 100)
y = np.sin(x)

# 绘制折线图
plt.plot(x, y)

# 获取当前 Axes 对象
ax = plt.gca()

# 设置坐标轴范围
ax.set_xlim([-10, 10])
ax.set_ylim([-1, 1])

# 设置坐标轴刻度
ax.set_xticks([-10, -5, 0, 5, 10])
ax.set_yticks([-1, -0.5, 0, 0.5, 1])

# 设置坐标轴标签
ax.set_xlabel('x')
ax.set_ylabel('sin(x)')

# 设置图表标题
ax.set_title('y=sin(x)')

# 显示图表
plt.show()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.风格设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3.条形图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.盒图

在这里插入图片描述
Q1 左半部分的中位数 Q3右半部分的中位数 中间是全体数据的中位数
plt.boxplot 是 Matplotlib 库中用于绘制箱线图也即盒图的函数。 箱线图可以展示数据的主要统计特性,包括中位数、四分位数、最大最小值等, 可用于发现异常值或者检查数据的分布情况。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

5.直方图和散点图

在这里插入图片描述
在这里插入图片描述
numpy.random.multivariate_normal() 函数返回一个二维的数组,
每一行表示一个二维多元正态分布随机数。如果参数 size 被指定了,则返回的数组维度为 (size, 2),其中第一列表示随机数在第一个维度上的取值,第二列表示随机数在第二个维度上的取值。如果 size 没有被指定,则返回一个长度为 2 的一维数组,第一个元素为第一个维度上的取值,第二个元素为第二个维度上的取值。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.3D图

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.pie图和布局

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

8.Pandas与sklearn结合实例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 首先,通过 pd.read_csv() 函数从 url 中读取 csv 文件,并将其中的 “?” 值转换为 NaN 缺失值,得到一个名为 df 的数据框。然后,创建一个 Imputer 对象,并将其应用于 df 中,即 Imputer().fit_transform(df)。这个操作将会使用指定的方法对 df 中的缺失值进行填充,默认是使用平均值 mean。

  • 这里的 fit_transform() 方法将会自动地修改缺失值,并返回填充好的数据。接着,将填充好的结果转换成一个新的数据框,并将其列名、索引与原来的 df 对齐。

  • Imputer 类只能对数值型数据进行填充。如果数据中包含其他类型的数据,在使用 Imputer 之前需要先使用相应的方法进行数据转换。
    在这里插入图片描述

  • 首先,从填充好缺失值的 impute 数据框中删除了名为 “Dx:Cancer” 的列,得到一个新的数据框 features,用来存储所有特征。此外,还将原数据框中的名为 “Dx:Cancer” 的列单独拿出来,存储在变量 y 中,用来存储分类目标变量。接着,使用 PCA 主成分分析将 features 数据框中的所有特征降维到了三维空间,得到降维后的数据 X_r。

  • 然后,使用 pca.explained_variance_ratio_ 查看了每个主成分所能解释的方差比例,分别对应第一、第二、第三个主成分。结果显示第一个主成分可以解释数据集的 38% 的方差,第二个主成分可以解释 23% 的方差,第三个主成分可以解释 14% 的方差,共计解释了 75% 的方差。

  • 最后,使用 Axes3D() 函数创建了一个三维坐标系对象,并通过 ax.scatter() 函数以 X_r 中的三个主成分为坐标,使用分类目标变量 y 来为点着色,并将结果可视化展示出来。
    在这里插入图片描述
    在这里插入图片描述

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

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

相关文章

如何在华为OD机试中获得满分?Java实现【贪心的商人】一文详解!

✅创作者&#xff1a;陈书予 &#x1f389;个人主页&#xff1a;陈书予的个人主页 &#x1f341;陈书予的个人社区&#xff0c;欢迎你的加入: 陈书予的社区 &#x1f31f;专栏地址: Java华为OD机试真题&#xff08;2022&2023) 文章目录 1. 题目描述2. 输入描述3. 输出描述…

Unity之2D碰撞器

1、什么是碰撞器 碰撞器是用于在物理系统中 表示物体体积的的&#xff08;形状或范围&#xff09; 刚体通过得到碰撞器的范围信息进行计算 判断两个物体的范围是否接触 如果接触 刚体就会模拟力的效果产生速度和旋转 2、参数 Edit Collider&#xff1a;编辑碰撞器 Material…

chatgpt赋能python:Python校验和的介绍

Python 校验和的介绍 在计算机科学中&#xff0c;校验和是一种用于检测数据传输中错误的简单方法。它可以用来确保数据在传输过程中没有发生丢失、损坏或篡改。Python语言中&#xff0c;我们可以通过各种方法来计算校验和。 常用的校验和算法 Python中常见的校验和算法包括&…

chatgpt赋能python:Python绘图颜色

Python绘图颜色 Python是一种通用编程语言&#xff0c;也是数据科学和机器学习领域中最受欢迎的语言之一。Python的一个强大的功能是绘图&#xff0c;它可以用来呈现数据和信息的可视化。 在Python绘图中&#xff0c;颜色是一个非常重要的元素。颜色可以帮助我们更好地理解数…

英睿达内存条正品鉴别教程(镁光颗粒)

我们打算买一款二手镁光颗粒的英睿达内存条,需要从正面内存标签上的条形码、字串,从背面颗粒上的两行字符一一分析、检查、鉴别,最终确认是否正品,以及内存条等级如何。通过本片文章,您能学会如何进行镁光颗粒的英睿达内存条正品鉴别。 一、标签检查 首先,用百度条形码…

win11还原win10磁贴方法ExplorerPatcher,替代Start 11、StartALLBack(开源免费~)

文章目录 1.简介2.解决方案3.ExplorerPatcher3.1功能概要3.2软件安装3.3软件卸载 4.操作使用&#xff08;部分&#xff09;4.1磁贴开启4.2磁贴使用小技巧4.3优化建议4.4注意事项 5.下载地址 1.简介 微软&#xff1a;我不向前兼容&#xff0c;用户喷我兼容性差。我向前兼容&…

搭建自己的pts性能测试平台--jmeter+influxdb+chronograf+grafana

不知道大家有没有使用过阿里的性能工具pts&#xff0c;详细的数据视图不要太香&#xff0c;唯一的缺点就是收费。那有没有类似的这种平台&#xff0c;让我们可以不花钱就体验相同的快感呢&#xff0c;答案是有的&#xff0c;下图中的平台就是这片文章看完操作完之后&#xff0c…

【JAVA进阶】File类、字节流

&#x1f4c3;个人主页&#xff1a;个人主页 &#x1f525;系列专栏&#xff1a;JAVASE基础 前言&#xff1a; 目前的编程中&#xff0c;数据存储方式有很多种&#xff0c;包括但不限于&#xff1a; 文件存储&#xff1a;将数据以文件的形式存储在磁盘上&#xff0c;可以使用文…

Radxa ROCK 5A 开箱

Rock5 Model A 是一款高性能的单板计算机&#xff0c;它采用了 RK3588S (8nm LP 制程&#xff09;处理器&#xff0c;具有 4 个高达2.4GHz 的 ARM Cortex-A76 CPU 核心、4 个高达 1.8GHz 的 Cortex-A55 内核和 Mali-G610 MP4 GPU。更重要的是&#xff0c;它还有一个高达 6TOPS …

内外网隔离下,通过网关转发,来部署前后端分离的系统

前言 最近为某银行系统部署了一套商城系统&#xff0c;网络环境比较特别&#xff0c;思路记录下&#xff0c;其中商场系统使用前后端分离模式部署。 该银行网络环境&#xff1a; 外网服务器&#xff1a;外网可以访问到它&#xff0c;不能访问外网。 网关服务器&#xff1a;跟…

横向移动-传递攻击atschtasks

横向移动就是拿下对方一台主机后&#xff0c;以拿下的那台主机作为跳板&#xff0c;对内网的其他主机再进行后渗透&#xff0c;拿到其他内网主机的权限的过程。叫做横向移动。横向移动的主要目的就是扩大战果。 传递攻击主要建立在明文和hash值获取基础上进行攻击。 at和scht…

【7 Vue3 – Composition API】

1 认识Composition API Options API的弊端 setup函数 2 setup函数的参数 3 setup简单使用 1 注意不再有响应式数据 要做到响应式数据需要在数据定义时使用ref包装数据,并且在使用时,使用value解包 2 注意template要使用的数据或者函数,必须要return 返回才能被使用 <templa…

拉格朗日松弛与拉格朗日分解 lagrangian relaxation

首先介绍下拉格朗日松弛的出发点&#xff0c;以及该方法所属的门类&#xff1b;再介绍下拉格朗日松弛法需要处理的难点和注意事项。 目录 1.拉格朗日松弛出发点 2.拉格朗日松弛所属分类 3.拉格朗日松弛 3.1 拉格朗日松弛&#xff08;松弛全部&#xff0c;转化为无约束问题…

【秒懂·云原生】微服务篇 —— Spring Cloud Commons:公共抽象

&#x1f50e;这里是【秒懂云原生】&#xff0c;关注我学习云原生不迷路 &#x1f44d;如果对你有帮助&#xff0c;给博主一个免费的点赞以示鼓励 欢迎各位&#x1f50e;点赞&#x1f44d;评论收藏⭐️ &#x1f440;专栏介绍 【秒懂云原生】 目前主要更新微服务&#xff0c;…

ClickHouse安装部署

—仅供学习 如有侵权 请联系删除– 一、下载 选择Tgz安装包安装 下载地址&#xff1a;Index of /clickhouse/tgz/ 选择stable目录下的安装包&#xff0c;采用21.9.4.35版本&#xff0c;分别是&#xff1a; [roothadoop08 resources]# ll 总用量 1023548 -rw-r--r--. 1 root …

JavaEE HTTP应用层协议

HTTP应用层协议 文章目录 JavaEE & HTTP应用层协议1. HTTP的报文协议格式1.1 fiddler介绍1.2 HTTP请求1.3 HTTP响应 2. HTTP请求与响应2.1 首行2.1.1 http方法2.1.2 URL2.1.3 版本号 2.2 header与空行2.2.1 Host2.2.2 Content-Type 与 Content-Length2.2.3 User-Agent&…

基于JavaWeb的事业单位公务员招考信息发布平台-考务考试报名系统

本文介绍了使用Java技术开发公务员招考信息发布平台的设计与实现过程&#xff0c;首先对实现该系统的技术进行分析&#xff0c;说明选择Java和MySQL数据库的必要性&#xff0c;然后对公务员招考信息发布平台的需求进行分析。并接着对系统进行设计&#xff0c;包括架构设计、功能…

用Python实现问卷星自动填写(超详细!!!)

用Python实现问卷星自动填写&#xff08;超详细&#xff01;&#xff01;&#xff01;&#xff09; 前言一、配置环境1.1安装依赖1.2安装驱动 二、实战处理2.1、引入库函数2.2、程序所需函数详解&#xff08;1&#xff09;自定义单选函数&#xff08;2&#xff09;自定义多选函…

基于STM32的DHT11温湿度测量

目录 1.简介 2.主要参数 3.引脚说明 4.注意事项 5.单总线协议 6.数据格式 7.工作时序 8.分模块编写程序 1.简介 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术&#xff0c;确保产品具有极高的可靠…

【数据分类】PNN数据分类 概率神经网络数据分类【Matlab代码#31】

文章目录 【可更换其他算法&#xff0c;获取资源请见文章第6节&#xff1a;资源获取】1. 模式识别之数据分类2. 概率神经网络&#xff08;PNN&#xff09;3. 基于PNN的数据分类步骤4. 部分代码展示5. 仿真结果展示6. 资源获取说明 【可更换其他算法&#xff0c;获取资源请见文章…