信用网站标准化建设商品网站做推广
news/
2025/10/4 11:09:52/
文章来源:
信用网站标准化建设,商品网站做推广,哪里可以找到制作网站的公司,电脑网络游戏目录
引入
一、Matplotlib模块#xff08;常用#xff09;
1、绘图流程常用图
编辑
2、绘制子图添加标注
编辑
3、面向对象画图
4、Pylab模块应用
二、Seaborn模块#xff08;常用#xff09;
1、常用图
2、代码示例
编辑
编辑
编辑
…目录
引入
一、Matplotlib模块常用
1、绘图流程常用图
编辑
2、绘制子图添加标注
编辑
3、面向对象画图
4、Pylab模块应用
二、Seaborn模块常用
1、常用图
2、代码示例
编辑
编辑
编辑
编辑
三、Artist模块
四、Pandas绘图
1、数据框dataframe系列series
2、pandas常用绘图函数 引入
Python中数据可视化有多种实现方式下面以实战项目需求为导向介绍几种比较流行的数据可视化模块Pyplot模块、Seaborn模块、Artist模块、Pandas模块。个人经常用到pyplot和seaborn
一、Matplotlib模块常用
Matplotlib提供了一整套和Matlab类似的命令API适合交互式制图。可方便地作为绘图控件嵌入GUI应用程序。文档完备https://matplotlib.org/3.1.1/gallery/index.html各种图打开都有源程序。
1、绘图流程常用图
①分别导入Matplotlib.pyplot和numpy
②定义横轴标度并以横轴标度为自变量定义纵轴功能函数
③figure()函数指定图像长宽比
④plot()函数绘制功能函数
⑤plt的属性函数设置图像属性
⑥show()函数显示图像
格式
plt.plot(x,y,其他参数)
其他参数label、color、linewidth、b--同时指定颜色和线型点.实线-虚点线-.点线:)虚线--无线条‘‘)
常用图类型 折线图plt.plot演示
import matplotlib.pyplot as plt
import numpy as np
x np.linspace(0,10,1000)
y np.sin(x)
z np.cos(x**2)
plt.figure(figsize(8,4))
plt.plot(x,y,label $sin(x)$,color red,linewidth 2) #绘图并指定了线的标签颜色粗细
plt.plot(x,z,label $cos(x^2)$,color blue,linewidth 1)
plt.xlabel(Times)
plt.ylabel(Volt)
plt.title(PyplotTest)
plt.ylim(-1.2,1.2) #y轴显示范围
plt.legend() #显示图中左下角的提示信息即提示标签哪个线是哪个函数2、绘制子图添加标注 Matplotlib中用轴表示一个绘图区域一个绘图对象figure可包含多个轴axis可理解为子图。可用subplot函数快速绘制有多个轴的图表子图
subplotnumRowsnumColsplotNum
将绘图区域分为numRows x numCols个子区域从左到右从上到下依次编号从编号1开始。三个参数都小于10时可省略之间逗号
标注即为图的注释 ①text函数可将文本放置在轴域的任意位置用来标注绘图的某些特征 ②annotate方法提供辅助函数进行定位使标注变得准确方便 文本位置及标注点位置均由元组xy描述参数xy表示标注点位置参数xytext表示文本位置
③...
#子图绘制演示接着上面示例的构建的函数
fig plt.figure(figsize(8,4))
ax fig.add_subplot(211) #创建Axes对象
plt.subplot(2,1,1) #两行一列个子区域编号1位置
plt.plot(x,y,label $sin(x)$,color red,linewidth 2)
plt.ylabel(y-Volt)
plt.legend()
plt.subplot(2,1,2) #两行一列个子区域编号2位置
plt.plot(x,z,label $cos(x^2)$,color blue,linewidth 1)
plt.ylabel(z-Volt)
plt.xlabel(Times)
ax.annotate(sin(x),xy(2,1),xytext(3,1.5),arrowprops dict(facecolorblack,shrink 0.05)) #添加文字和黑色箭头Artist模块的简单类型Artist
ax.set_ylim(-2,2)
plt.show() 3、面向对象画图 4、Pylab模块应用 也是matplotlib里面的一个模块提供可绘制二维、三维数据的工具模块包含numpy和pyplot模块中的常见函数方便快速计算和绘图。
二、Seaborn模块常用
它基于matplotlib但提供了更高级的统计图形方法
1、常用图 2、代码示例
下面选取逻辑回归算法一种分类算法titannic数据集中特征工程数据预处理中的一段代码演示
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn
import sklearn
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn import preprocessingtitanic_data pd.read_csv(titanic_data.csv) #泰坦尼克号幸存或遇难者信息
titanic_data titanic_data[[Survived, Pclass, Sex, Age, SibSp, Parch, Embarked, Fare]] #选取需要的8列
#1.特征工程
titanic_data[Age].fillna((titanic_data[Age].mean()), inplaceTrue) #Age有177个空值这里用平均值替代
titanic_data.dropna(inplaceTrue) #Embarked只有2个空值可放弃这两个值
titanic_data_X titanic_data[[Pclass, Sex, Age, SibSp, Parch, Embarked, Fare]]
titanic_data_Y titanic_data[[Survived]] #分离自变量X和因变量Y最后的分类结果为2个1或0是否存活
X_train, X_test, Y_train, Y_test train_test_split(titanic_data_X, titanic_data_Y,test_size0.20) #将数据分成训练集和测试集
seaborn.countplot(xPclass, data X_train) #检查Pclass舱位等级柱状图
plt.show() seaborn.displot(X_train[Age]) #检查Age分布图柱状图核密度估计
plt.show() seaborn.displot(X_train[Fare]) #检查Fare票价分布图柱状图核密度估计
plt.show() age_scaler StandardScaler() #创建Z-Score标准化对象对Age进行分类特征标准化
age_scaler.fit(pd.DataFrame(X_train[Age]))
X_train.loc[:, Age] age_scaler.transform(X_train[[Age]]) #双[]fare_scaler StandardScaler() #创建Z-Score标准化对象对Fare票价进行分类特征标准化
fare_scaler.fit(pd.DataFrame(X_train[Fare]))
X_train.loc[:, Fare] fare_scaler.transform(X_train[[Fare]]) #双[]X_train.loc[:, Sex] X_train[Sex].map({female: 0, male: 1}) #将Sex映射为01embarked_encoder preprocessing.LabelEncoder() #创建编码对象对Embarked登船口3个编码
embarked_encoder.fit(pd.DataFrame(X_train[Embarked]))
X_train.loc[:, Embarked] embarked_encoder.transform(X_train[[Embarked]])#截至此将所有数据的格式转换完成用heatmap检查下特征之间的关联性
seaborn.heatmap(X_train.corr())
plt.show() 三、Artist模块 Matplotlib绘图库的API包含3个图层——画板、渲染、artist.Artist如何渲染。相比Pyplot和Pylab两个APIArtist用于处理所有的高级结构如处理图表、文字、曲线等的绘制和布局不需要关注底层的绘制细节。 Artist分简单类型、容器类型两种。简单类型的Artist为标准的绘图元件如Line2D、Rectangle、Text、AxesTmage等容器类型可以包含许多简单类型的Artist组成一个整体如Axis、Axes、Figure等。
步骤
①创建Figure对象
②用Figure对象创建一个或多个Axes或者Subplot对象
③调用Axes等对象的方法创建各种简单类型的Artist
Matplotlib所绘制的图表中的每一个元素都由Artist控制而每一个Artist对象包含很多属性来控制显示效果常见属性
alpha透明值0完全透明1完全不透明
animate布尔值绘制动画效果是使用
axes此Artist对象所在的Axes对象可能为None
figure此Artist对象所在的Figure对象可能为None
label文本标签
picker控制Artist对象选取
zorder控制绘图顺序
所有属性都可通过相应的get_*和set_*函数读写如将alpha设置为当前值的一半
fig.set_alpha(0.5*fig.get_alpha())
若一句代码设置多个属性
fig.set(alpha 0.5,zorder 2,label $sin(x)$)
四、Pandas绘图
pandas是python最强大的数据分析和探索工具包含高级的数据结构和精巧的工具。它构建在numpy之上使得以numpy为中心的应用更便捷支持类似于SQL的数据操作具有丰富的数据处理函数它的作图依赖于matplotlib通常两者一起使用。
1、数据框dataframe系列series
pandas带两个重要数据结构数据框dataframe、系列series①数据框
二维表行列都有索引面向行列的操作对称。创建数据框的方法很多常用包含相等长度列表的字典或Numpy数组来创建数据库行索引默认由0开始列索引用户自定义也可自定义行索引列索引要与字典对应不然数据为空
import pandas as pd
data {name:[小明,小红,小刚,小强,大壮],age:[15,16,14,18,20],score:[88,99,65,95,67]}
dataframe1 pd.DataFrame(data)
dataframe2 pd.DataFrame(data,columns[name,age,score],index[one,two,three,four,five])
print(dataframe1)
print(dataframe2)
运行结果name age score
0 小明 15 88
1 小红 16 99
2 小刚 14 65
3 小强 18 95
4 大壮 20 67name age score
one 小明 15 88
two 小红 16 99
three 小刚 14 65
four 小强 18 95
five 大壮 20 67
②系列
对具有同一属性的值的统称可理解为一维数组退化了的数据框
print(dataframe2[name])
运行结果
one 小明
two 小红
three 小刚
four 小强
five 大壮
Name: name, dtype: object
2、pandas常用绘图函数
plot绘制线性二维图matplotlib/pandas库都有
pie绘制饼形图matplotlib/pandas、库都有
hist绘制二维条形直方图matplotlib/pandas库都有
boxplot绘制样本数据箱体图pandas库
plotlogy True绘制y轴的对数图pandas库
plotyerr error绘制误差条形图pandas库
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/927062.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!