pio*_*903 1 python plot matplotlib
我有一个列表中的(x,y)值列表,如[(x,y),(x,y),(x,y)....].我觉得在matplotlib中有一个解决方案,但由于我的格式化,我无法完全实现.我想将其绘制为直方图或线图.任何帮助表示赞赏.
您可以(x, y)使用*('splat')运算符轻松地将元组列表转换为两个x和y坐标元组的列表(另请参阅此SO问题):
>>> zip(*[(0, 0), (1, 1), (2, 4), (3, 9)])
[(0, 1, 2, 3), (0, 1, 4, 9)]
Run Code Online (Sandbox Code Playgroud)
然后,您可以再次使用*运算符将这些参数解压缩到 plt.plot
>>> plt.plot(*zip(*[(0, 0), (1, 1), (2, 4), (3, 9)]))
Run Code Online (Sandbox Code Playgroud)
甚至 plt.bar
>>> plt.bar(*zip(*[(0, 0), (1, 1), (2, 4), (3, 9)]))
Run Code Online (Sandbox Code Playgroud)