2

我目前正在尝试使用 seaborn 对 loglog 图进行线性回归。目前,即使数据以 loglog 比例显示,它也会尝试在正常比例上进行线性回归。

import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pylab as plt
import seaborn as sns

x = np.arange(1, 10)
y = x**2.0
data = pd.DataFrame(data={'x': x, 'y': y})
f, ax = plt.subplots(figsize=(7, 7))
ax.set(xscale="log", yscale="log")
sns.regplot("x", "y", data, ax=ax)

示例 1

我能够做的唯一解决方法是在绘图之前记录 x 和 y,但是与上面的代码相比,x 和 y 的比例不再好。

import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pylab as plt
import seaborn as sns

x = np.arange(1, 10)
y = x**2.0
data = pd.DataFrame(data={'x': x, 'y': y})
data=np.log(data)
f, ax = plt.subplots(figsize=(7, 7))
sns.regplot("x", "y", data)

示例 2

有没有办法从第一个代码示例中保持对数刻度,但线性回归适用于对数刻度而不是正常刻度?

4

0 回答 0