首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:多重QQ-情节

Python:多重QQ-情节
EN

Stack Overflow用户
提问于 2019-03-13 13:20:10
回答 1查看 7K关注 0票数 2

我是新来的,通常来自R,我想创造一个QQ情节多行。

我有一个贝塔分布的数据集,我想尝试不同的参数,为贝塔分布,并比较他们在,1,,QQ-绘图,以更好的比较。如果我尝试下面的代码,每个情节都有相同的颜色,我有3条QQ线。有没有可能把这三个QQ情节合并成一个呢?

我希望你能理解我的问题

代码语言:javascript
复制
import scipy.stats as stats
import numpy
x=numpy.random.beta(2, 3, size=100)
stats.probplot(x, dist=stats.beta, sparams=(2,3),plot=plt,fit=False)
stats.probplot(x, dist=stats.beta, sparams=(1,2),plot=plt,fit=False)
stats.probplot(x, dist=stats.beta, sparams=(1,4),plot=plt,fit=False)

善良的毕业生

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-14 11:18:56

好吧,所以stats.probplot让我有点困惑。文件明确指出:

probplot生成概率图,不应与Q-Q或P图混淆.

然而,我能找到的所有资料都表明,概率图是指Q-Q图或P图。去想一想。

无论如何,就我而言,你所生成的是一个Q-Q图。

在我看来,选项fit=False of stats.probplot也被忽略了,并且总是在数据中添加一条回归线。

无论如何,为了得到您想要的,我们可以显式地创建matplotlib轴实例,并使用get_lines方法删除不想要的回归线并更改标记颜色。

代码语言:javascript
复制
import scipy.stats as stats
import numpy as np
import matplotlib.pyplot as plt

plt.style.use('seaborn')

x = numpy.random.beta(2, 3, size=100)

fig, ax = plt.subplots(1, 1, figsize=(6, 4))
stats.probplot(x, dist=stats.beta, sparams=(2,3), plot=plt, fit=False)
stats.probplot(x, dist=stats.beta, sparams=(1,2), plot=plt, fit=False)
stats.probplot(x, dist=stats.beta, sparams=(1,4), plot=plt, fit=False)

# Remove the regression lines
ax.get_lines()[1].remove()
ax.get_lines()[2].remove()
ax.get_lines()[3].remove()

# Change colour of scatter
ax.get_lines()[0].set_markerfacecolor('C0')
ax.get_lines()[1].set_markerfacecolor('C1')
ax.get_lines()[2].set_markerfacecolor('C2')

# Add on y=x line
ax.plot([0, 1], [0, 1], c='C3')

这给了我以下几点,我认为这一次真的是你想要的:

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55142882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档