人工智能开发实战matplotlib库应用基础

内容导读

  1. matplotlib简介
  2. 绘制直方图
  3. 绘制撒点图

一、matplotlib简介

matplotlib是一个Python 2D绘图库,它以多种硬拷贝格式和跨平台的交互式环境生成高质量的图形。

matplotlib 尝试使容易的事情变得更容易,使困难的事情变得可能。

我们只需几行代码就可以生成图表、直方图、功率谱、条形图、误差图、散点图等,为大数据的可视化和人工智能的图形化分析提供了大量绘图函数。

二、绘制直方图

Python的第三方库matplotlib提供了丰富的绘图功能,在正式绘图之前,需要在cmd命令窗口中执行如下命令:

pip3 install matplotlib

安装完matplotlib后,就可以在notebook中来使用它强大的绘图功能进行数据的可视化操作。

在数据的可视化过程中,要根据具体的数据可视化分析要求,选用不同的绘图函数来分析数据特征间的关系、查看变量的变化趋势、了解数据的整体分布情况等,去真正读懂数据,为数据深度分析和数据决策提供图形化的信息。

下面,就以绘制直方图为例,来进一步了解此类图形能为我们带来哪些数据解读信息。

案例:用直方图描述2017年到2018年间各季度第一产业的生产总值情况。

1、案例描述

第一产业的生产总值保存在GDP.csv文件中,用matplotlib绘制第一产业生产总值的直方图,并进行对比分析。

2、案例分析

首先利用numpy库将文件数据读入到二维数组中,作为绘图函数的数据源来使用,然后用matplotlib的直方图绘图函数bar()将数组中“第一产业”列的数据以柱状图进行展现。

3、案例实现

# 实现代码import numpy as npimport matplotlib.pyplot as pltplt.rcParams['font.family'] = 'SimHei'# 将全局的字体设置为黑体GDP_data=np.loadtxt("./data/GDP.csv",delimiter=",",skiprows=1)quarter=GDP_data[0:8,0].astype(int)plt.bar(height=GDP_data[0:8,1],x=range(len(GDP_data[0:8,1])),label='第一产业GDP',tick_label=quarter)plt.legend()plt.show()	

代码行3将全局的字体设置为黑体,代码行5将数组值转换成整数,代码行6绘制柱状图,其高度用参数height来指定,即二维数组中第1列的值。

柱状图x坐标用第1产业的数据个数来表示,参数lable是图例标签,参数tick_label是x轴标签。代码行7显示图例,代码行8是显示图形。

程序的运行结果如下图所示:

由上图可以直观看出,在前8个季度中,2018年第4季度的GDP最大,最小值在2017年的第1季度,最大值将近是最小值的3倍多。

另外,每年4个季度的GDP都趋于不断增长的势头,且不同年份对应的各季度的GDP也同样呈现出上升的趋势。

由此可见,通过图形的方式对数据进行可视化,能直观解读数据内隐含的变化趋势,为数据统计和分析提供了一种便捷手段。

三、绘制撒点图

散点图是利用一系列的散点将两个变量的联合分布描绘出来,让我们从图形分布中推断一些信息,如两变量间是否存在某种有意义的关系。

散点图是统计分析中常用的一种手段,特别是在分类统计图形中,它可以算得上是中流砥柱,当数据以恰当的方式在图形中展示出来时,我们就可以非常直观地观察到某些趋势或者模式,也就揭示了变量之间的关系。

1、seaborn是在matplotlib基础上面的封装,方便直接传参数调用

让我们能做出更加吸引人注意的图表,并有助于更好分析数据。

2、使用pip3 install seaborn命令安装完seaborn库后才能使用其绘图功能

用散点图分析鸢尾花的花瓣的宽度和长度之间的相关性。

(1)引例描述

鸢尾花有关花瓣和花蕊的数据保存在iris.csv文件中,我们试图从花瓣的宽度和长度的视角去探索鸢尾花的品种类别是否与花瓣有关。

(2)引例分析

首先利用Pandas库将文件数据读入到数据框中,然后利用seaborn的关系图函数relplot绘制散点图。为便于观察,利用数据框中的种类列Species来区分颜色和散点样式。

(3)引例实现

    # 实现代码如下所示。import pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsiris=pd.read_csv("./data/iris.csv")sns.set(style="whitegrid",font="simhei",font_scale=0.9)sns.relplot(x="Petal.Length", y="Petal.Width", hue="Species", palette=["r","b","g"],style="Species", data=iris);plt.show()

代码中的pandas库是人工智能学习中处理数据的高效工具,pandas 是基于NumPy来创建的,它纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。

以上代码中,relplot函数的参数hue和style分别表示使用不同的颜色和样式区分Species维的数据,以便观察不同品种鸢尾花在花瓣维度的分布情况。

更多内容请持续关注本站!

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

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

相关文章

C语言深入理解指针(二)

目录 指针运算指针-整数指针-指针指针的关系运算 野指针野指针成因指针未初始化指针越界访问指针指向的空间释放 如何规避野指针指针初始化注意指针越界指针不使用时就用NULL避免返回局部变量的地址 assert断言指针的使用和传址调用传址调用例子(strlen函数的实现&a…

SSC338D/SSC338Q CA7*2+IPU5M/Multi-sensorISP: HDR/3DNR

SSC338D/SSC338Q系列产品是高度集成的多媒体片上系统(SoC)产品,适用于IP摄像机、车载摄像机和USB摄像机等高分辨率智能视频录制应用。该芯片包括32位双核RISC处理器、高级图像信号处理器(ISP)、高性能MJPEG/H.264/H.26…

idear导入他人项目如何快速运行

最近idear经常导入别人的项目,结果永远在加载依赖项。网上查了一堆资料,什么jdk问题,环境变量问题,maven仓库路径问题,总之就是没啥用。那有没有什么简单粗暴的办法,能够导入项目后快速运行呢。 解决方法&a…

MATLAB 2024a安装包下载及安装教程、超详细步骤

[安装环境]: Win 11/Win 10 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等。MATLAB的基本数据单位是矩阵,它的指令表达式与数学…

Git常用指令大全详解

Git常用指令大全详解 Git,作为目前最流行的分布式版本控制系统,其强大的功能和灵活性为开发者提供了极大的便利。无论是个人项目还是团队协作,Git都扮演着不可或缺的角色。本文将详细总结Git的常用指令,帮助大家更好地掌握这一工…

九大B端开源组件库:总览篇,B端设计绕不开的话题。

如果你经常接触B端设计,开源组件库是各个绕不开的话题,市场上的组件库林林总总,本次做一个总体介绍,后面有机会再分开详细介绍。 一、最常用的组件库,推出的时间。 自Bootstrap诞生后,B端PC中后台组件库如…

爬虫代理API的全面解析:让数据抓取更高效

在大数据时代,网络爬虫已经成为收集和分析数据的重要工具。然而,频繁的请求会导致IP被封禁,这时候爬虫代理API就显得尤为重要。本文将详细介绍爬虫代理API的作用、优势及如何使用,帮助你更高效地进行数据抓取。 什么是爬虫代理AP…

C++刷怪笼(5)内存管理

一.前言 学习完类和对象之后,我们对C有了基本的了解,但是我们对于C的学习,除了广度,还需要深度,今天让我们走进底层,看看C对其内存是如何进行管理的。 二.正文 我们对这段代码进行详细的分析如下图&#…

技术美术一百问(02)

问题 前向渲染和延迟渲染的流程 前向渲染和延迟渲染的区别 G-Buffer是什么 前向渲染和延迟渲染各自擅长的方向总结 GPU pipeline是怎么样的 Tessellation的三个阶段 什么是图形渲染API? 常见的图形渲染API有哪些? 答案 1.前向渲染和延迟渲染的流程 【例图…

使用Rust直接编译单个的Solidity合约

这里写自定义目录标题 使用Rust直接编译单个的Solidity合约前言预备知识准备工作示例 使用Rust直接编译单个的Solidity合约 前言 我们知道,我们平常开发Solidity智能合约时一般使用Hardhat框架,但是如果你是一个Rustacean (这是由 “Rust” 和 “crust…

2024年【中级消防设施操作员(考前冲刺)】及中级消防设施操作员(考前冲刺)模拟考试题库

题库来源:安全生产模拟考试一点通公众号小程序 中级消防设施操作员(考前冲刺)根据新中级消防设施操作员(考前冲刺)考试大纲要求,安全生产模拟考试一点通将中级消防设施操作员(考前冲刺&#xf…

设计模式之建造者模式(通俗易懂--代码辅助理解【Java版】)

文章目录 设计模式概述1、建造者模式2、建造者模式使用场景3、优点4、缺点5、主要角色6、代码示例:1)实现要求2)UML图3)实现步骤:1)创建一个表示食物条目和食物包装的接口2)创建实现Packing接口的实体类3&a…

golang 字符串浅析

go的字符串是只读的 测试源代码 package mainimport ("fmt""unsafe" )func swap(x, y string) (string, string) {return y, x }func print_string(obj *string, msg string) {string_ptr : (*[2]uintptr)(unsafe.Pointer(obj))first_obj_addr : string_…

MySQL系列—13.事务

1、事务 事务是逻辑上的一组操作,要么都执行,要么都不执行。 事务控制语法 - 事务开始 begin; - 事务提交,提交后就会写入物理磁盘中去 commit; - 事务回滚,事务提交后,无法回滚 rollback;事务的四大特性&#xff0…

基于51单片机的温度电流电压检测系统(压力、电压、温度、电流、LCD1602)

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机,通过DS18B20检测温度,滑动变阻器连接数模转换器模拟电流、电压,通过LCD1602显示,程序里设置温度阈值为40,电流阈值为60&am…

六西格玛咨询:石油机械制造企业的成本控制与优化专家

一、石油机械制造行业现状及主要困扰 随着全球能源需求的日益增长,石油开采和生产设备需求不断增加,石油机械制造行业在过去数十年里得到了迅猛发展。然而,石油机械制造作为一个高度复杂且技术密集的行业,也面临着多重挑战。首先…

【Vue】- 路由及传参

文章目录 知识回顾前言源码分析1. 声明式导航2. 路由传参3. 可选符4. 重定向5. 4046. 跳转及传参7. 路由懒加载拓展知识总结router-link静态传参和动态路由的对比知识回顾 前言 什么是单页面应用程序? ● 所有功能在一个html页面上实现 单页面应用优缺点? ● 优点:按需更新…

大模型时代的 AI 产品经理何去何从?

每天 LLM 相关的资讯都让人过载。作为 AI 产品经理,你是更兴奋呢,还是更担忧呢?整理了一下个人近期的思考,欢迎感兴趣的朋友一起交流。不管答案如何,相信我们都不应置身事外。 1 关于大模型‍‍ 大模型的各种原理讲…

OpenAI O1热度己过-如此快速的冷场带来的是人们更多对现今“AI”的思考

引入o1的瞬间辉煌 o1如耀眼的新星,闪耀于科技天空。发布时,因其思考能力而备受瞩目。它能在回答问题之前进行更多的思考,尤其擅长复杂推理。这种能力引发了众多用户的好奇与热情。诸如“9.8和9.11哪个大?”的简单问题被广泛地验证…

上海人工智能实验室开源视频生成模型Vchitect 2.0 可生成20秒高清视频

上海人工智能实验室日前推出的Vchitect2.0视频生成模型正在悄然改变视频创作的游戏规则。这款尖端AI工具不仅简化了视频制作流程,还为创作者提供了前所未有的灵活性和高质量输出。 Vchitect2.0的核心优势在于其强大的生成能力和高度的可定制性。用户只需输入文字描…