• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Python,matplotlib.pyplot不能看到线图

python 来源:cyber101 9次浏览

我试图使用matplotlib.pyplot包图&图3列出的元组的Python Spyder IDE中的Python 3。下面是我的代码的相关片段:Python,matplotlib.pyplot不能看到线图

import matplotlib.pyplot as plt 

def plot_test(item): 
    xdata = [] 
    ydata = [] 
    for item in list_of_epoch_total_time_tuples: 
     xdata = item[0] 
     ydata = item[3] 

    plt.plot(xdata,ydata) 
    plt.ylabel('epoch_counter') 
    plt.xlabel('square_error') 
    plt.show() 

这里是我的输出:

enter image description here

我不能看到的线图。该图是空的?

1)我怎么可以得出这样的正常

2)我怎么能提供绘图范围,所以没有负值?

感谢

===========解决方案如下:

首先,从你的屏幕抓取代码有plt.plot(xdata,item[3:]),而你加入到这个问题的代码是plt.plot(xdata,ydata)我以为是你想要的。问题是你在每次迭代时都覆盖xdata和ydata,所以它只是单个项目的值。相反使用:

for item in list_of_epoch_total_time_tuples: 
    xdata.append(item[0]) 
    ydata.append(item[1]) 

这会将值添加到列表的末尾而不是覆盖变量的数据。此外,您还有物品作为plot_test()的参数,但它似乎并未在任何地方使用,并且您还使用名称项作为for循环参数。你应该避免在这样的两个地方使用相同的名字,因为它可能会造成混淆。

为了改变范围,你可以使用:

plt.xlim(xmin=some_min, xmax=some_max) 

plt.xlim(xmin=some_min) 

如果你只是想改变分钟。你可以为ylim做类似的命令。

如果你有一个数据集,你也可能想使用numpy进行调查。使用numpy数组通常比使用列表和循环更快


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)