【精选】Python数据可视化之散点图(基础篇

您所在的位置:网站首页 雷达图不适合展现某个数据集的多个关键特征 【精选】Python数据可视化之散点图(基础篇

【精选】Python数据可视化之散点图(基础篇

2023-10-28 19:20| 来源: 网络整理| 查看: 265

Python数据可视化之散点图 介绍准备工作所需的库虚拟环境 简单散点图总结 两种不同颜色和图例的散点图总结

介绍

       •数据可视化的应用十分广泛,几乎可以应用于自然科学、工程技术、金融、通信和商业等各种领域。下面我们基于Python,介绍一下第一个常用知识点—散点图

准备工作 所需的库

       •为了使数据可视化我们需要安装下述的库,再进行可视化操作!!        •numpy:NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库

pip install numpy -i https://pypi.douban.com/simple

       •pandas:Pandas 是 Python 语言的一个扩展程序库,用于数据分析,还是一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算),还可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据

pip install pandas -i https://pypi.douban.com/simple

       •matplotlib:是 Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式

pip install matplotlib -i https://pypi.douban.com/simple 虚拟环境

       •建议在开始操作python可视化之前,创建一个新的虚拟环境,方便管理与操作!!!        •虚拟环境的作用:我们可以通过创建多个虚拟环境实现环境拆分,每个虚拟环境安装不同版本的库,从而满足不同的需求,各个虚拟环境之间相互独立、不对其它环境产生影响!!!        •虚拟环境参考博文:python虚拟环境的安装与配置(究极详细易理解版!!!)        •上述博文博主亲测有效!!!

简单散点图

       •代码需求:绘制一个一元函数的散点图        •使用matplotlib中的scatter()函数进行绘图!! 代码测试:

# 导入我们所需的库 as:即给库取别名,方便书写 import matplotlib.pyplot as plt import numpy as np # 定义数据 x = np.random.rand(10) # 取出10个随机数 y = x + x ** 2 - 10 # 用自定义关系确定y的值 # 绘图 # 1. 确定画布 plt.figure(figsize=(8, 4)) # figsize:确定画布大小 # 2. 绘图 plt.scatter(x, # 横坐标 y, # 纵坐标 c='red', # 点的颜色 label='function') # 标签 即为点代表的意思 # 3.展示图形 plt.legend() # 显示图例 plt.show() # 显示所绘图形

图形展示: 在这里插入图片描述

       •如果需要将图片保存到本地需将上述代码中的的plt.show() # 显示所绘图形更换成如下代码:

plt.savefig('需要保存图片的路径地址/图片名.jpg') # 图片名可自定义(必须写图片名称.jpg) 总结

       •plt.show()不能和plt.savefig()同时使用,即为展示图片和保存图片不能同时使用!!        •横坐标与纵坐标可以随意取值,但必须要有!!        •当scatter()函数中有label属性时,必须要有显示图例语句!!即:plt.legend()        •scatter()函数中还有s属性,为数据点尺寸大小!!

s=50 #数据点尺寸大小

       •横坐标x与纵坐标y的值是一一对应的,一个x对应生成一个y!!

两种不同颜色和图例的散点图

       •代码需求:将十个不同的点分成(0,1)两类,每一类都展示不同的颜色!!! 代码测试:

# 导入我们所需的库 as:即给库取别名,方便书写 import matplotlib.pyplot as plt import numpy as np # 生成数据 x = np.random.rand(10, 2) # 生成10行 2列的数据集 y = np.array([0, 0, 1, 0, 1, 1, 0, 1, 0, 1]) # 二分类,将生成的数据点(x,y)分成0,1两类 # 绘图 # 1.确定画布 plt.figure(figsize=(8, 4)) colors = ['red', 'green'] # 建立颜色列表 labels = ['Zero', 'One'] # 建立标签类别列表 # 2.绘图 for i in range(x.shape[1]): # shape[] 类别的种类数量(2) plt.scatter(x[y == i, 0], # 横坐标 x[y == i, 1], # 纵坐标 c=colors[i], # 颜色 label=labels[i]) # 标签 # 3.展示图形 plt.legend() # 显示图例 plt.show() # 显示图片

图片展示: 在这里插入图片描述

总结

       •当使用多种不同颜色来绘图时,需要使用循环在同一画布进行绘制,循环次数为分类的种类数量,即为:x.shape[1] x 分类种类数量 (2) !!        •循环一次画一个颜色类别的点!!        •需要分别建立颜色列表,标签类别列表,循环时进行使用!!        •横,纵坐标使用切片的方式获得!!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3