gpt4 book ai didi

python - matplotlib 中不需要的白色列——如何删除?

转载 作者:行者123 更新时间:2023-12-03 23:01:48 25 4
gpt4 key购买 nike

这是 python 代码(从 Richard McElreath 出色的 Statistical Rethinking 移植),它在我的结果图中产生了一个不需要的白色透明“列”:

import numpy as np
import pandas as pd
import scipy.stats

import matplotlib.pyplot as plt

# import data
url = "https://raw.githubusercontent.com/pymc-devs/resources/master/Rethinking_2/Data/Howell1.csv"


df = pd.read_csv(url, delimiter = ';')
df2 = df[df.age >= 18]

# sample priors (prior predictive check)

n = 100
a = scipy.stats.norm.rvs(178, 20, n)
b1 = scipy.stats.norm.rvs(0, 10, n)
b2 = np.exp(scipy.stats.norm.rvs(0, 1, n))

xbar = df2.weight.mean()


# compare 2 priors

fig,ax = plt.subplots(1,2,sharey=True)

for i in range(100):
ax[0].plot(df2.weight, a[i] + b1[i]*(df2.weight - xbar),color = 'grey',lw=.5,alpha=.2)
ax[0].set_xlabel('weight')
ax[0].set_ylabel('height')
ax[0].set_title('normal prior of β')
ax[1].plot(df2.weight, a[i] + b2[i]*(df2.weight - xbar),color = 'grey',lw=.5,alpha=.2)
ax[1].set_xlabel('weight')
ax[1].set_title('log-normal prior of β')

plt.axis([30,60,-100,400])
plt.show()
matplotlib output
这发生在我的 Jupyter 笔记本、Google CoLab 和 pdf (plt.savefig) 中
我的笔记本版本:
NumPy 1.19.4
Pandas 1.1.5
scipy 1.5.4
matplotlib 3.3.3
谢谢!!

最佳答案

我认为你的意思是线条被画得更细/更轻的区域,而不是边界。
我发现它与别名有关,而不是数据本身。
玩转 抗锯齿 范围:

ax[0].plot(..., antialiased=False)
看起来像这样:
enter image description here
当然,它会使绘图看起来很难看,但您可以增加图形大小或 dpi 参数。
fig.set_dpi(300.0)
...
plt.show();
然后你得到这个:
enter image description here

关于python - matplotlib 中不需要的白色列——如何删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65343287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com