如何使用折线图以图形方式显示两个变量之间的相关性(来自同一 DataFrame 的两列)

Posted

技术标签:

【中文标题】如何使用折线图以图形方式显示两个变量之间的相关性(来自同一 DataFrame 的两列)【英文标题】:How to use line chart to graphically show the correlation between two variables ( two columns from a same DataFrame) 【发布时间】:2021-12-01 00:33:31 【问题描述】:

我试图通过使用 折线图 以图形方式显示两个变量(来自同一 DataFrame(df) 的两列)之间是否存在相关性。我已经检查了这两列之间是否存在相关性(使用df.corr() 方法)并找到了一个值(-0.986)。但是,我想知道如何使用折线图查看它。

# Set variables for columns
x = df['mark'] #[92,92,32,95] #sampledata
y = df['time'] #[130,120,175,120](minutes) #sampledata

#display correlation between all columns in the dataFrame
print(df.corr())

#Select the correlation between the columns
df_corr = pd.DataFrame(df1[[x, y]].corr()).round(2)

plt.plot(df_corr,'--')

我得到: 我不明白。

【问题讨论】:

我不明白折线图如何为您提供有关 2 个变量之间相关性的信息。在您的图表中,两个变量之间的相关性为 0.84。在每个角落,您都有一个来自相关矩阵的值 1 = (var1, var1), 0.84 = (var1, var2) 和相互 如果你想要一条线,那么你应该做一个回归。对于.corr,热图是正确的选择。 好的,谢谢,也许是我不明白我需要做什么。我正在以初学者的身份从事一个项目,有一个问题是,在创建数据框之后,我必须>. 【参考方案1】:

使用seaborn.heatmap:

# Python env: pip install seaborn
# Anaconda env: conda install seaborn
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

df = pd.DataFrame('mark': [92,92,32,95], 'time': [130,120,175,120])
sns.heatmap(df.corr().round(2))
plt.show()

【讨论】:

以上是关于如何使用折线图以图形方式显示两个变量之间的相关性(来自同一 DataFrame 的两列)的主要内容,如果未能解决你的问题,请参考以下文章

如何让zedgraph画折线图时Y轴设置为不等间距

Dash Plotly中的烛台图和折线图,它会随着回调而更新,但会消失

做数据分析的常用方法有哪些?

如何对两个折线图之间的区域进行着色

R数据可视化-4 折线图

Python图形绘制:如何用Matplotlib和pandas绘图?