使用Matplotlib绘制重叠轮廓的重叠集

时间:2016-03-01 11:22:13

标签: python matplotlib

我正在尝试绘制叠加的等高线图(针对KDE绘制的正态分布)。我已经达到了创建轮廓的程度,但我坚持让它们重叠。理想情况下,我想要的是绘图区域从近透明到高度不透明的平滑变化,由样本着色。我相信如果我可以将每个轮廓填充到相同的alpha级别,我可以这样做,但我无法轻松调试:是否可以访问QuadContourSet的基础艺术家?有更好的方法吗?

以下是相关代码:

for sample in samples:
    x = data[sample.id]

    # Plot probability density function
    res = sample.res
    T = res.params[0]
    s = res.bse[0]

    # Peform the kernel density estimate
    xx, yy = N.mgrid[x.min():x.max():1000j, -3*s:3*s:1000j]
    yy += T

    kernel = gaussian_kde(x)
    P = norm.pdf(yy.ravel(),T,s)
    v = kernel(xx.ravel())*P
    f = N.reshape(v, xx.shape)

    cset = comp_ax.contour(xx, yy, f,colors=sample.color, alpha=0.5)

我也玩过contourf(特别是使用从透明到所需颜色的自定义色彩图),但这无处可去。关于这种方法的任何建议也会受到欢迎。

这就是我现在的位置(为布局卫生不良而道歉)......

Non-filled contours

0 个答案:

没有答案