我有两个列表如下:
values = [['2000', '246', '535', '461', '654', '522'], ['2000', '246', '535', '461', '654']]
levels = [['Levels', '200', '300', '400', '500', '600'], ['Levels', '200', '350', '430', '520']]
这个想法是在同一个图表中表示,从每个列表的第二个位置开始,values
的第一个列表与elements
的第一个列表和{{1}的第二个列表}对照values
的第二个列表。
为此,我提出以下代码行:
levels
但是我得到了两张不同的图表。我如何能够在一个图表中表示所有内容?谢谢!
答案 0 :(得分:1)
你不需要循环"对于"让你想要的。试试这个:
import matplotlib.pyplot as plt
fig=plt.figure()
ax=fig.add_subplot(111)
x = values[0][1:] + values[1][1:]
y = levels[0][1:] + levels[1][1:]
ax.plot(x,y)
plt.show()
答案 1 :(得分:1)
您的示例代码似乎可以执行您想要的操作...
但是你可以让它变得更加py ;;
import matplotlib.pyplot as plt
fig=plt.figure()
ax=fig.add_subplot(111)
allValues = [['2000', '246', '535', '461', '654', '522'], ['2000', '246', '535', '461', '654']]
allLevels = [['Levels', '200', '300', '400', '500', '600'], ['Levels', '200', '350', '430', '520']]
for levels, values in zip(allLevels, allValues):
ax.plot(levels[1:],values[1:])
plt.show()
另外,只是一个猜测,但你有x
和y
错误的方法吗?