Python 从numpy.ndarray数据打印图像

Python 从numpy.ndarray数据打印图像,python,pandas,matplotlib,image-processing,numpy-ndarray,Python,Pandas,Matplotlib,Image Processing,Numpy Ndarray,我有一个列['signal'],它由每行500个数据组成。每行的长度相同。我想挑一行,把它画成图。我尝试了类似data.reforme((1,-1))的方法,但没有成功。我在网上找到了许多解决方案,但出现了更多的错误消息。那么,我怎样才能: 从该列中的一行数据打印图像 打印更多图像的任何方法,例如,打印数据集中列中的所有图像(可选问题) 以下是一个玩具数据示例: ' 19.35983', ' 19.33365', ' 19.30945', ' 19.3211', ' 19.34946

我有一个列['signal'],它由每行500个数据组成。每行的长度相同。我想挑一行,把它画成图。我尝试了类似data.reforme((1,-1))的方法,但没有成功。我在网上找到了许多解决方案,但出现了更多的错误消息。那么,我怎样才能:

  • 从该列中的一行数据打印图像
  • 打印更多图像的任何方法,例如,打印数据集中列中的所有图像(可选问题)
  • 以下是一个玩具数据示例:

       ' 19.35983', ' 19.33365', ' 19.30945', ' 19.3211',
       ' 19.34946', ' 19.37268', ' 19.38763', ' 19.4', ' 19.4063',
       ' 19.41592', ' 19.97250', ' 19.4294', ' 19.4368', ' 19.44623',
       ' 19.4646', ' 19.47464', ' 19.485', ' 19.4948', ' 19.50592',
       ' 19.51727', ' 19.51672', ' 19.5159', ' 19.52573'
       
    

    如果您不能使用此数据,请获取您认为有帮助的任何数据!谢谢大家!

    您的数据似乎是字符串格式,因此请在重塑之前尝试转换:

    import numpy as np
    
    data = [' 19.35983', ' 19.33365', ' 19.30945', ' 19.3211']
    lst = [float(item) for item in data]
    array = np.reshape(lst, (2,2))
    

    感谢@TME,我想我得到了一些图像:

    import numpy as np
    import matplotlib.pyplot as plt
    
    data = [' 19.35983', ' 19.33365', ' 19.30945', ' 19.3211']
    lst = [float(item) for item in data]
    array = np.reshape(lst, (-1,1))
    plt.figure(figsize=(30,15))
    
    plt.plot(array)
    plt.ylabel('some numbers')
    
    plt.show()
    

    这可能还不是正确的答案。如果您知道如何做得更好,或者如何绘制该列中的所有图像(一行一幅图像),请提供建议。谢谢大家!

    谢谢@TME。这些日期的类型是numpy.ndarray。我尝试了你的解决方案,得到了两条线。美好的因为我一行有500个数据,我应该如何重塑它?我收到此错误消息ValueError:无法将大小为500的数组重塑为形状(2500)图像应该看起来像电信号我不确定图像应该是什么样子,但通常np.Reformate要求所需的大小为(行、列):因此,如果数据包含500个数据点,则可以将其塑造为2行x 250列,总计500:resporate(lst,(2250)):)我尝试使用array=np。resporate(lst,(-1,1))显示了某种图像。不确定是否正确。