本文共 2246 字,大约阅读时间需要 7 分钟。
•数据可视化的应用十分广泛,几乎可以应用于自然科学、工程技术、金融、通信和商业等各种领域。下面我们基于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可视化之前,创建一个新的虚拟环境,方便管理与操作!!!
•虚拟环境的作用:
我们可以通过创建多个虚拟环境实现环境拆分,每个虚拟环境安装不同版本的库,从而满足不同的需求,各个虚拟环境之间相互独立、不对其它环境产生影响!!! •虚拟环境参考博文: •上述博文博主亲测有效!!! •代码需求:绘制一个一元函数的散点图
•使用matplotlib中的scatter()函数
进行绘图!! 代码测试: # 导入我们所需的库 as:即给库取别名,方便书写import matplotlib.pyplot as pltimport 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()
同时使用,即为展示图片和保存图片不能同时使用!!
plt.legend()
•scatter()函数中还有s属性,为数据点尺寸大小!! s=50 #数据点尺寸大小
•横坐标x与纵坐标y的值是一一对应的,一个x对应生成一个y!!
•代码需求:将十个不同的点分成(0,1)两类,每一类都展示不同的颜色!!!
代码测试:# 导入我们所需的库 as:即给库取别名,方便书写import matplotlib.pyplot as pltimport 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) !!
•循环一次画一个颜色类别的点!! •需要分别建立颜色列表,标签类别列表,循环时进行使用!! •横,纵坐标使用切片的方式获得!!转载地址:http://xyrzi.baihongyu.com/