Matplotlib 离散散点图可视化

Matplotlib 离散散点图可视化,matplotlib,visualization,scatter-plot,imshow,Matplotlib,Visualization,Scatter Plot,Imshow,这是一个非常特殊的绘图请求,但我有数据要以非常特殊的方式查看。情况如下: 1) 我拥有的数据分为25个数据箱,每个数据箱包含不同数量的数据点。仓位值越大,粗略地说,仓位中的数据点数量就越少(这只是数据处理的结果) 2) 我可以访问bin值 [ 0.02648645 0.09996368 0.1734409 0.24691813 0.32039536 0.39387258 0.46734981 0.54082703 0.61430426 0.68778148 0.76125

这是一个非常特殊的绘图请求,但我有数据要以非常特殊的方式查看。情况如下:

1) 我拥有的数据分为25个数据箱,每个数据箱包含不同数量的数据点。仓位值越大,粗略地说,仓位中的数据点数量就越少(这只是数据处理的结果)

2) 我可以访问bin值

[ 0.02648645  0.09996368  0.1734409   0.24691813  0.32039536  0.39387258
  0.46734981  0.54082703  0.61430426  0.68778148  0.76125871  0.83473593
  0.90821316  0.98169038  1.05516761  1.12864483  1.20212206  1.27559928
  1.34907651  1.42255373  1.49603096  1.56950818  1.64298541  1.71646264]
我可以在matplotlib中轻松生成“errorbar”类型的绘图(y轴从半径缩放到以下度数):

但是,对于我想研究的内容来说,这并不是特别有见地。我真的很想知道每个箱子中是否有角度值的“孤岛”,要做到这一点,我需要像散点图或imshow/hexbin类型的图,其中点的密度可以用颜色表示(至少在imshow/hexbin的情况下)。以下是用具有最小标记大小的规则散点图表示时发生的情况的示例:

有谁知道产生这种可视化效果的好方法吗

编辑:这可能有助于澄清一些事情。下图是前两个箱子的柱状图的示例。箱子中包含的数据似乎遵循某种分布(我之前提到过“孤岛”,因为我不排除分布中出现多个峰值的可能性)。我想这个分布是可视化的所有箱子同时进行。换句话说,有没有办法为每个垃圾箱绘制一张垂直温度图,并将它们全部显示在同一个图上


评论中提到的小提琴情节很好地解决了我的问题。在那里,我找到了它的python实现——如果最终将其包含到matplotlib中,那当然很好。过度绘制是以中值为中心的方框图,包括第二和第三个四分位数


为什么不想使用散点图?如果您的数据为
x
y
,您只需将
x
值限制在最近的垃圾箱中心,然后绘制数据。我不确定我是否理解您的意思。我根本无法匹配您的图和您显示的数据。。。为什么你不能使用imshow?那是因为我没有包括所有的数据。我包含的是每个bin中的数据点数量以及bin值。它认为把所有的数据都包括进去是个坏主意。小提琴图是一个很好的方法。
[ 0.02648645  0.09996368  0.1734409   0.24691813  0.32039536  0.39387258
  0.46734981  0.54082703  0.61430426  0.68778148  0.76125871  0.83473593
  0.90821316  0.98169038  1.05516761  1.12864483  1.20212206  1.27559928
  1.34907651  1.42255373  1.49603096  1.56950818  1.64298541  1.71646264]