python - 使用 seaborn regplot 扩展回归线

标签 python pandas matplotlib seaborn

我搜索过,但没有找到对 seaborn 库进行重新分级的答案。我还检查了 lmplot()regplot() 的文档,但都没有找到。 是否可以扩展和控制回归线的长度?默认情况下,seaborn 根据 x 轴的长度拟合回归线的长度。另一种选择是使用参数 truncate=True - 这会将回归线限制在数据范围内。 其他选择?

在我的示例中,我希望下回归线向下延伸直到 x=0。并且上面的线延伸到与下面的线的交点。

example

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

file = 'cobbles.csv'
df = pd.read_csv(file, sep=',')

sns.regplot(x='downward_temp', y='downward_heat', data=df, ci=None)
sns.regplot(x='upward_temp', y='upward_heat', data=df, ci=None, order=2)


plt.xlim([0,25])
plt.ylim([0,100])
plt.show()

最佳答案

如果您在绘图之前知道 x 限制,则可以在调用 regplot 之前为轴set_xlim,然后 seaborn 将在范围内扩展回归线和 CI的 xlim。

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

file = 'cobbles.csv'
df = pd.read_csv(file, sep=',')

fig, ax = plt.subplots()

xlim = [0,25]
ax.set_xlim(xlim)

sns.regplot(x='downward_temp', y='downward_heat', data=df, ci=None, ax=ax)
sns.regplot(x='upward_temp', y='upward_heat', data=df, ci=None, order=2, ax=ax)

ax.set_ylim([0,100])
plt.show()

关于python - 使用 seaborn regplot 扩展回归线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43320458/

相关文章:

python - 如何为 pandas.DataFrame().index 添加后缀/前缀?

python - matplotlib 中的矢量格式热图

python + matplotlib : barh plot show incomplete YTick labels - how to dynamically move the plot area to the right to fit the given YTickLabels?

python - 关于 matplotlib 对数轴标签

Python 在使用 Usecol 时添加列

python - 在网站上运行搜索并返回结果的脚本

python - 无法访问属于同一类其他函数的函数中的变量?

python - Python 3.4 中的 "async with"

python-3.x - 有条件地乘以 DataFrame 行中的值

python - 使用 Pandas 中的两列创建层次结构