具有几个y值的散点图python

时间:2015-03-27 03:50:37

标签: python matplotlib plot scatter-plot

想象一下,我们有一个类似于此的列表:

[
    [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等等。

1 个答案:

答案 0 :(得分:3)

您可以使用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()

enter image description here

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

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

list(enumerate(li))