Pandas 如何在matplot上绘制分散趋势线?蟒蛇熊猫

Pandas 如何在matplot上绘制分散趋势线?蟒蛇熊猫,pandas,numpy,matplotlib,Pandas,Numpy,Matplotlib,我想在matplot上画一条分散的趋势线。我该怎么做 蟒蛇 import pandas as pd import matplotlib.pyplot as plt csv = pd.read_csv('/tmp/test.csv') data = csv[['fee', 'time']] x = data['fee'] y = data['time'] plt.scatter(x, y) plt.show() import pandas as pd import numpy as np imp

我想在matplot上画一条分散的趋势线。我该怎么做

蟒蛇

import pandas as pd
import matplotlib.pyplot as plt
csv = pd.read_csv('/tmp/test.csv')
data = csv[['fee', 'time']]
x = data['fee']
y = data['time']
plt.scatter(x, y)
plt.show()
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
csv = pd.read_csv('/tmp/test.csv')
data = csv[['fee', 'time']]
x = data['fee']
y = data['time']
plt.scatter(x, y)

z = np.polyfit(x, y, 1)
p = np.poly1d(z)
plt.plot(x,p(x),"r--")

plt.show()
CSV

时间是整数值


散点图很抱歉我自己找到了答案

蟒蛇

import pandas as pd
import matplotlib.pyplot as plt
csv = pd.read_csv('/tmp/test.csv')
data = csv[['fee', 'time']]
x = data['fee']
y = data['time']
plt.scatter(x, y)
plt.show()
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
csv = pd.read_csv('/tmp/test.csv')
data = csv[['fee', 'time']]
x = data['fee']
y = data['time']
plt.scatter(x, y)

z = np.polyfit(x, y, 1)
p = np.poly1d(z)
plt.plot(x,p(x),"r--")

plt.show()
图表

带文本:

从sklearn.metrics导入r2_分数
plt.绘图(x,y,“+”,ms=10,mec=“k”)
z=np.多边形拟合(x,y,1)
y_hat=np.poly1d(z)(x)
plt.plot(x,y,hat,“r--”,lw=1)
text=f“$y={z[0]:0.3f};x{z[1]:+0.3f}$\n$R^2={r2_分数(y,y:0.3f}$”
plt.gca().text(0.05,0.95,text,transform=plt.gca().transAxes,
fontsize=14,垂直对齐(顶部)

您也可以使用Seaborn lmplot:

import seaborn as sns

import pandas as pd

from io import StringIO

textfile = StringIO("""fee,time
100,650
90,700
80,860
70,800
60,1000
50,1200""")

df = pd.read_csv(textfile)

_ = sns.lmplot(x='fee', y='time', data=df, ci=None)
输出:


很抱歉,我不熟悉熊猫这个词。我想我找到了答案。我将更新我的问题。可能重复