PYTHON基础:数据可视化绘图

python数据可视化入门

–常见的四种数据图形绘制
数据可视化在数据分析和数据科学中起着重要的作用。它可以帮助我们更直观地理解和解释数据,发现数据中的模式、趋势和异常。

在数据可视化中,常用的图表类型包括折线图、散点图、直方图和饼图,每种图表类型都适用于不同类型的数据和目的。

折线图:用于显示随时间或其他连续变量而变化的数据,可以展示趋势和变化情况。

散点图:用于显示两个变量之间的关系,每个数据点代表一个观测值,可以帮助发现变量之间的相关性或集群。

直方图:用于显示数据的分布情况,将数据分成若干个区间,并统计每个区间内的观测数量或频率。

饼图:用于显示分类数据的占比情况,将数据按照类别划分,并展示每个类别的相对比例。

除了以上常用的图表类型,还有其他更复杂的图表类型和可视化技术,如箱线图、热力图、地图等,可以根据具体的数据和分析目的选择合适的图表类型。

在Python中,使用Matplotlib、Seaborn、Plotly等库可以轻松地进行数据可视化。这些库提供了丰富的函数和方法,可以进行数据处理、图表绘制、样式设置等操作,帮助我们快速生成高质量的图表。

通过数据可视化,我们可以更好地理解数据,发现数据中的规律和趋势,从而支持决策制定、问题解决和进一步的数据分析工作。

这里我就先介绍最基础的四个数据图的创建方法,按折线图、散点图、直方图和饼图的先后顺序,我直接把讲解以注释的形式打在代码旁边就不多写旁白了
折线图

import matplotlib.pyplot as plt
’‘’每次绘图基本上都会用到matplotlib这个模块,import 表示引用,as 的意思就是因为每次都写这个字母太长了,直接用一个plt代替‘’‘
squares=[1,4,9,16,25]#我们的y轴
x=[1,2,3,4,5]#我们的x轴
plt.style.use('seaborn')#这里其实可有可无,这个用来选择
plt.plot(x,squares,linewidth=5)#这个就是创建图像,括号里面的是先x轴,y轴还有我创建的线的大小
plt.title('square nunber',fontsize=24)#这里英文叫title中文的意思,用来设置标题的
plt.xlabel('value',fontsize=14)#设置x轴名称和字体大小
plt.ylabel('square of value',fontsize=14)#设置y轴的名称和字体大小
plt.tick_params(axis='both',labelsize=12)#设置刻度样式,指定的实参将影响x y轴的刻度(axis=both),labelsize是设置字号
plt.show()#让图像显示出来

这段代码同样使用了Matplotlib库来创建一个折线图。

代码中首先定义了两个列表x和squares,分别表示横坐标和纵坐标的数据。

接着,使用plt.style.use(‘seaborn’)选择了一个风格为’seaborn’的样式。

然后,使用plt.plot()函数绘制折线图,传入x和squares作为数据点的横坐标和纵坐标。linewidth参数设置折线的宽度。

接下来,使用plt.title()、plt.xlabel()和plt.ylabel()函数设置图表的标题、x轴和y轴的名称,并指定字体大小。

使用plt.tick_params()函数设置刻度样式,其中axis='both’表示同时设置x轴和y轴的刻度样式,labelsize=12指定刻度标签的字号为12。

最后,使用plt.show()显示图表。

整体而言,这段代码通过Matplotlib库创建了一个折线图,展示了x和squares两个列表的数据关系。图表具有标题、轴标签和刻度样式等,使得数据更加易于理解和解读。
在这里插入图片描述
散点图

import matplotlib.pyplot as plt
squares=[1,4,9,16,25]
x=[1,2,3,4,5]
plt.scatter(x,squares,linewidth=5)
plt.title('square nunber',fontsize=24)
plt.xlabel('value',fontsze=14)#设置x轴名称和字体大小
plt.ylabel('square of value',fontsize=14)#设置y轴的名称和字体大小
plt.tick_params(axis='both',labelsize=12)#设置刻度样式,指定的实参将影响x y轴的刻度(axis=both),labelsize是设置字号
plt.show()

这段代码使用了Matplotlib库来创建一个散点图。

首先,定义了两个列表x和squares,分别表示横坐标和纵坐标的数据。

接着,使用plt.scatter()函数绘制散点图,传入x和squares作为数据点的横坐标和纵坐标。linewidth参数设置散点的边界宽度。

然后,使用plt.title()函数设置图表的标题为"square number",并指定字体大小为24。

接下来,使用plt.xlabel()和plt.ylabel()函数设置x轴和y轴的名称,同时指定字体大小为14。

使用plt.tick_params()函数设置刻度样式,其中axis='both’表示同时设置x轴和y轴的刻度样式,labelsize=12指定刻度标签的字号为12。

最后,使用plt.show()显示图表。

整体而言,这段代码通过python库创建了一个散点图,展示了x和squares两个列表的数据关系。图表具有标题、轴标签和刻度样式等,使得数据更加易于理解和解读。
在这里插入图片描述
柱状图

import numpy as np#这个也是数据分析常用的库之一,里面有很多有用的函数,比如下面就用到
import matplotlib.pyplot as plt
a=np.random.random(5)#这里我随机生成五个浮点数
x=np.arange(5)#生成01234
plt.bar(x,a,width=0.5
plt.show()

在这段代码中,我们首先引入了NumPy库,并使用np.random.random(5)生成了一个包含五个随机浮点数的数组。然后,使用np.arange(5)生成了一个包含0到4的整数数组作为条形图的x坐标。

接着,我们使用plt.bar()函数创建了一个简单的条形图,传入x坐标、高度数据a以及条形的宽度。最后使用plt.show()显示了生成的条形图。
在这里插入图片描述
饼图

import matplotlib.pyplot as plt
labels ='wed','网站','django','Django'
sizes =[143,125,3,28]
explode =[0.2,0,0,0]     
plt.pie(x=sizes,labels=labels,explode=explode,autopct='%3.1f %%',
shadow=True,labeldistance=1.1,startangle=90,pctdistance=0.6)
‘’‘括号里面比较复杂,但是我们现在只需要关注几个点就可以了,第一个是sizes,他是我们的数据,label是不同的名称,explore是饼与其他饼的距离,如果是0就贴在一起,数字表示分离的距离‘’‘
plt.show()

在这里插入图片描述

代码中定义了四个变量:labels表示每个扇区的标签,sizes表示每个扇区的大小,explode表示每个扇区与其他扇区之间的距离,autopct表示显示百分比的格式。

使用plt.pie()函数创建了饼图,其中传入了sizes、labels、explode等参数。x=sizes表示使用sizes作为数据源,labels=labels表示使用labels作为标签,explode=explode表示扇区之间的距离,autopct='%3.1f %%'表示显示百分比,并设置了显示格式,shadow=True表示显示阴影效果,labeldistance=1.1表示标签的位置离圆心的距离,startangle=90表示起始角度为90度,pctdistance=0.6表示百分比标签的位置离圆心的距离。

最后使用plt.show()显示了生成的饼图。

参考文献
jupyterLab绘制:柱状图,饼状图,直方图,散点图,折线图–weixin_30535565

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

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

相关文章

为什么要运营海外社媒?海外云手机能发挥什么作用?

基于海外社媒在全球范围内拥有的大量流量,海外社媒运营成为了品牌推广、内容创作和用户互动的重要途径。本文将探讨海外社媒运营的重要性,并介绍海外云手机在这一过程中的卓越帮助。 海外社媒运营的重要性 首先,海外社媒运营有助于企业扩大品…

Qt高质量的开源项目合集

文章目录 1.Qt官网下载/文档2.第三方开源 1.Qt官网下载/文档 Qt Downloads Qt 清华大学开源软件镜像站 Qt 官方博客 2.第三方开源 记录了平常项目开发中用到的第三方库,以及一些值得参考的项目! Qt AV 基于Qt和FFmpeg的跨平台高性能音视频播放框…

C# 55. INI文件操作

//IniFileOp.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Runtime.InteropServices;namespace xxxxx {class IniFileOp{//#region 声明读写INI文件的API函数[DllImport("ker…

EasyExcel导出

1.简介 官网:EasyExcel官方文档 - 基于Java的Excel处理工具 | Easy Excel 2.案例 2.1 实现的效果 效果图如下: 2.2 实现步骤 三种情景,主要是表头和数据有区别,简列实现步骤如下: 2.3 具体实现 2.3.1 前置-依赖导入…

【LeetCode-剑指offer】--3.比特位计数

3.比特位计数 class Solution {public int[] countBits(int n) {int[] bites new int[n 1];for(int i 0 ; i < n;i){bites[i] Count(i);}return bites;}public int Count(int x){int count 0;while(x > 0){x & (x - 1);count;}return count;} }

Python入门学习篇(十)——函数定义函数传参方式

1 相关定义和概念 1.1 函数的理解 一段被封装的可以重复调用的代码。 1.2 函数定义语法结构 def 函数名(形参1,形参2):要封装的逻辑代码 # 注意:函数可以有返回值也可以没有返回值,没有返回值的结果是None1.3 函数调用的语法结构 函数名(形参1,形参2)1.4 简单实例 1.4.1 …

同义词替换降低论文相似度的注意事项 papergpt

大家好&#xff0c;今天来聊聊同义词替换降低论文相似度的注意事项&#xff0c;希望能给大家提供一点参考。 以下是针对论文重复率高的情况&#xff0c;提供一些修改建议和技巧&#xff0c;可以借助此类工具&#xff1a; 标题&#xff1a;同义词替换降低论文相似度的注意事项 …

算法训练营Day27

#Java #回溯 #Hard 开源学习资料 Feeling and experiences&#xff1a; 以下题目都比较困难&#xff0c;第一遍刷的时候&#xff0c;先看懂即可。 重新安排行程&#xff1a;力扣题目链接 给你一份航线列表 tickets &#xff0c;其中 tickets[i] [fromi, toi] 表示飞机出发…

计算 10亿 的和,js 和 c 的处理时长对比

计算 10亿 的和&#xff0c;js 和 c 的处理时长对比 js 4.17s let sum 0; let start new Date().getTime(); for (let i0;i<1000000000; ii1){sum sum i; } let stop new Date().getTime(); console.log((stop - start)/1000, sum);结果&#xff1a; c 3.65s #in…

Windows搭建FTP服务器教学以及计算机端口介绍

目录 一. FTP服务器介绍 FTP服务器是什么意思&#xff1f; 二.Windows Service 2012 搭建FTP服务器 1.开启防火墙 2.创建组 ​编辑3.创建用户 4.用户绑定组 5.安装ftp服务器 ​编辑6.配置ftp服务器 7.配置ftp文件夹的权限 8.连接测试 三.计算机端口介绍 什么是网络…

【优质会议|录用快】2024年教育发展与多媒体技术国际会议(ICEDUTM 2024)

【优质会议|录用快】2024年教育发展与多媒体技术国际会议&#xff08;ICEDUTM 2024&#xff09; 2024 International Conference on Education Development and Multimedia Technology 会议的主题主要围绕教育发展和多媒体技术的研究领域&#xff0c;旨在为相关领域的专家、学…

解决ELement-UI懒加载三级联动数据不回显(天坑)

最老是遇到这类问题头有点大,最后也是解决了,为铁铁们总结了一下几点 一.查看数据类型是否一致 未选择下 选择下 二.处理数据时使用this.$set方法来动态地设置实例中的属性&#xff0c;以确保其响应式 三.绑定v-if 确保每次重新加载 四.绑定key 五.完整代码

进行VMware日志管理

随着公司转向虚拟化其 IT 空间&#xff0c;虚拟环境日志监控正在占据日志管理的很大一部分,除了确保网络安全外&#xff0c;虚拟机日志监控还有助于管理虚拟化工具&#xff0c;这是最复杂的任务之一。 对虚拟环境日志的监控分析 当今公司中最受欢迎的虚拟平台之一是 VMware。…

图像处理-周期噪声

周期噪声 对于具有周期性的噪声被称为周期噪声&#xff0c;其中周期噪声在频率域会出现关于中心对称的性质&#xff0c;如下图所示 带阻滤波器 为了消除周期性噪声&#xff0c;由此设计了几种常见的滤波器&#xff0c;其中 W W W表示带阻滤波器的带宽 理想带阻滤波器 H ( u …

二维码能转成链接吗?具体步骤是什么样的?

将二维码分解成链接来使用&#xff0c;是经常会出现的一种需求&#xff0c;分解成的链接可以放在电脑浏览器上&#xff0c;就可以在电脑上查看二维码的内容。那么如何将二维码图片做解码处理呢&#xff1f;最简单也是很多人会选择使用的一种方法就是使用二维码解码器来处理&…

客户案例:网关V7助力政府行业提升邮件安全与效率

客户背景 某事业单位自1983年创立以来&#xff0c;始终以应用为导向&#xff0c;坚定地推进机制创新与实际创新双轨并进。在区域教育信息化领域&#xff0c;该单位从广度与深度两个维度进行了大力推进&#xff0c;取得了许多具有独创性的成果。通过充分利用现代教育技术&#…

如何提高代码质量:5 个基本步骤

软件开发团队有时会遇到各种挑战&#xff0c;导致他们难以按时生产高质量的项目。在这里&#xff0c;我们讨论了通过持续测试快速保证质量的五种策略。 每个人都想要更高质量、更快的软件。对现代软件开发团队的要求是巨大的——从日益激烈的竞争和市场压力、不断增加的功能和…

php-ssrf

漏洞描述&#xff1a; SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。 一般情况下&#xff0c;SSRF攻击的目标是从外网无法访问的内部系统。&#xff08;正是因为它是由服务端发起的&#xff0c;所以它能够请求…

POI根据表头模板导出excel数据,并指定单个单元格样式,多sheet。

最近的公司需求&#xff0c;因为Excel表头样式较为复杂&#xff0c;不易直接用poi写出。 需要的Excel为这种&#xff1a; 直接模板导出不能成为这样。 public void exportCheckCsdn(HttpServletResponse response) {//获取到MNR 和 MNR-DT 的List// 此处写 获取到指定li…

是德科技E9304A功率传感器

是德科技E9304A二极管功率传感器测量频率范围为9 kHz至6 GHz的平均功率&#xff0c;功率范围为-60至20 dBm。该传感器非常适合甚低频(VLF)功率测量。E系列E9304A功率传感器有两个独立的测量路径&#xff0c;设计用于EPM系列功率计。功率计自动选择合适的功率电平路径。为了避免…