所以我用statsmodels.graphics.gofplots.qqplot()绘制了一个正常的Q-Q图。
模块使用matplotlib.pyplot创建地物实例它把图表画得很好。
但是,我想用alpha=0.3绘制标记。
有办法吗?
下面是代码示例:

import numpy as np
import statsmodels.api as sm
import matplotlib.pyplot as plt

test = np.random.normal(0,1, 1000)

sm.qqplot(test, line='45')
plt.show()

输出图:

最佳答案

qqplot返回一个figure对象,该对象可用于获取lines,然后可以使用set_alpha修改该对象。

fig = sm.qqplot(test, line='45');

# Grab the lines with blue dots
dots = fig.findobj(lambda x: hasattr(x, 'get_color') and x.get_color() == 'b')

[d.set_alpha(0.3) for d in dots]

python - 如何更改statsmodels qqplot的图属性? ( python )-LMLPHP
很明显,这些点有一点重叠,所以即使它们的alpha值很低,在它们相互叠加的地方,看起来也更不透明。

08-26 04:22