具有多个 y 值的散点图 python

scatter plot python with several y values

假设我们有一个类似于此的列表:

[
    [1115, 1061], 
    [134], 
    [304, 357, 253, 359], 
    [512, 513, 514], 
    [543], 
    [576], 
    [533], 
    [130], 
    [513, 357, 358]
]

我们如何plot一个scatter plot,其中list中的值作为它的y值,列表的索引值作为x值。

例如,y=1115 应显示在 x=1 处,y=1061 也应显示在 x=1 处,依此类推

你可以用 enumerate:

li = [[1115, 1061], [134], [304, 357, 253, 359], 
      [512, 513, 514], [543], [576], [533], 
      [130], [513, 357, 358]]
for i in list(enumerate(li)):
    plt.scatter([i[0]+1]*len(i[1]), i[1])
plt.show()

如果 enumerate 不熟悉,请在命令行探索它:

eli = enumerate(li)
i = eli.next()
i[0]
i[1]

list(enumerate(li))