• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

剧情中的小提琴曲风格直方图

python 来源:Sebastiano1991 6次浏览

我有一个情节,有几个数据点,我想保持原样。剧情中的小提琴曲风格直方图

其中一个数据点是’更好’,因为它不仅带有值,而且带有分配给它的概率。

我想通过绘制正常数据点来显示概率,并且用测量的PDF显示一个小提琴图。

到目前为止,我已经用散点图上绘制它看起来有点像这样(在M​​WE)做到了这一点:

import numpy as np 
import matplotlib.pyplot as plt 



def plot(): 
    x = np.linspace(0,20,20) 
    data = x + np.random.rand(len(x)) 
    y = 2*x 
    histo = np.array([1,2,3,10,20,10,3,1]) 
    y_better = np.array([9.5,9.8,10,11.5,12,13,15,16]) 

    ax = plt.subplot() 
    ax.plot(x,data,'o') 
    ax.scatter(np.ones_like(histo)*x[10],y_better,c=histo,norm=matplotlib.colors.LogNorm(),s=100) 
    plt.show() 

plot() 

,看起来像这样:

enter image description here

虽然这是有效的,并且传递信息 – 但看起来不太酷。

根据@jadsq的建议,我发现violinplots,看起来完全像我想要的!

我现在有问题,小提琴图函数会假定数据,然后方便地绘制PDF。在我的情况下,我已经有一个测量PDF(这是我想绘制)。我如何制作一张看起来像小提琴情节的情节,但是用我的PDF(所以没有估算)?


===========解决方案如下:

对我来说,它看起来像一种指示错误条的方法,因此您可以尝试使用box plot来表示它。

关于彩色地图:只需添加cmap='inferno'在分散的呼叫,像这样:

ax.scatter(np.ones_like(histo)*x[10],y_better,c=histo,norm=matplotlib.colors.LogNorm(),s=100,cmap='inferno') 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)