Python seaborn/matplotlib图表中的回归线表现异常

Python seaborn/matplotlib图表中的回归线表现异常,python,matplotlib,seaborn,Python,Matplotlib,Seaborn,在seaborn/matplotlib中,是否有更好的方法沿散点图绘制函数?我只是在做regplot,但出于某种原因,回归线只是在做。。。那个 附加问题:有没有办法让seaborn告诉我它在线路上使用了什么功能 我真的只需要一条线和一个实际的函数,用这些点的最好方法 谢谢 a = { 4:44, 8:167, 16:479, 32:1239, 64: 2991, 128: 7012, 256: 15997, 512: 35922, 1024: 79590, 2048: 174699, 4096:

在seaborn/matplotlib中,是否有更好的方法沿散点图绘制函数?我只是在做regplot,但出于某种原因,回归线只是在做。。。那个

附加问题:有没有办法让seaborn告诉我它在线路上使用了什么功能

我真的只需要一条线和一个实际的函数,用这些点的最好方法

谢谢

a = { 4:44, 8:167, 16:479, 32:1239, 64: 2991, 128: 7012, 256: 15997, 512: 35922, 1024: 79590, 2048: 174699, 4096:380155,
8192: 821857, 16384: 1766870, 32768: 3779259, 65536: 8050043, 131072:17983451, 262144: 36133203, 524288: 76198683,
1048576:160262930, 2097152: 336255735, 4194304: 703966918, 8388608: 1470850124, 16777216: 3067526261, 33554432: 6386708998}



df = pd.DataFrame({'n':list(a.keys()), 'operations':list(a.values())})
f, ax = plt.subplots(figsize=(6, 6))
ax.set(xscale="log", yscale="log")

ax= sns.regplot('n', 'operations', df, ci=None)

plt.show()

这仅表明回归线没有穿过原点(0,0)

可以通过numpy的值检索一次多项式拟合的斜率和偏移量

import numpy as np
k = np.polyfit(df['n'], df['operations'], 1)
然后像这样画出来

plt.plot(df['n'], df['n']*k[0]+k[1])
然而,这将导致(几乎)相同的画面。 但使用polyfit,您有机会对数据点进行加权。
如果你给出原点,例如1000,其余的1,你会得到一行通过(0,0)。

你为什么要在x和y上都应用日志?家庭作业的问题建议这样做是为了可读性。可能是为了评分员。我最后只是做了t=np.arange(1,2**25.)m=np.log10(t)*t*18。也就是用numpy画一条线