python进行相关性分析并绘制散点图详解

时间:2022-08-25 22:27:51

近期,有小伙伴问我关于怎么使用python进行散点图的绘制,这个东西很简单,但是怎么讲相关性的值标注在图形上略显麻烦,因此,在这里记录一下,将整个流程展示一下。

 需要用到的库

在本篇博客中,主要用到的库是pandas、numpy、matplotlib、seaborn等,想要使用seaborn库必须要引入matplotlib库,seaborn是作为它的外挂库。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#1 load pakeage
 
import pandas as pd#读写表格以及表格处理
import numpy as np#用于数据计算
 
import geopandas as gpd
import matplotlib.pyplot as plt
import seaborn as sns
import os
import warnings
warnings.filterwarnings("ignore")
plt.rc('font',family='Times New Roman')
from glob import glob
from osgeo import gdal,gdal_array,gdalnumeric
plt.rcParams['font.sans-serif']=['Simhei'#显示中文
plt.rcParams['axes.unicode_minus']=False    #显示负号

数据读取

这里我使用的是师弟的一部分数据,在这里进行数据读取。

?
1
2
df = pd.read_csv('./JXDY_1.csv',encoding='utf-8')
df.head()

python进行相关性分析并绘制散点图详解

这里我们做相关性分析

?
1
df.corr()#默认是pearson相关性分析

python进行相关性分析并绘制散点图详解

之后我们进行批量化的散点图输出,将相关性数据放在图形上

?
1
2
3
4
5
6
7
a = 2#这里的相关性是从第二位开始进行计算的,所以我从第二位开始提取
for i in df.columns[3:]:
    a1 = sns.lmplot(y='fruit',x=i,data=df)
    ax = plt.gca()
    ax.text(0.9,1,"Pearson:{:.2f}".format(df.corr().iloc[1,a]),transform=ax.transAxes)#添加相关性
    a = a+1
    plt.savefig('./{}.jpg'.format(i),dpi=300,bbox_inches = 'tight')

 python进行相关性分析并绘制散点图详解

 结果就大功告成了,之后吧结果输出来就可以了!

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!

原文链接:https://blog.csdn.net/zyh19970701/article/details/120332927