【问题标题】:How do I make a numpy array's numbers plot on different axes?如何在不同的轴上绘制一个 numpy 数组的数字?
【发布时间】:2015-11-03 17:13:00
【问题描述】:

我拥有的是一个如下所示的 numpy 数组。

>>> result
array([[    0. ,     0. ],
       [   18.6,   -11.1],
       [   36.1,   -21.9],
       ..., 
       [ -535.5,  1020.3],
       [ -535.5,  1020.3],
       [ -535.5,  1020.3]])

我想要做的是使用matplotlib.pyplot as plt 绘制它,第一个数字在 x 轴上,第二个数字在 y 轴上。我该怎么做?

【问题讨论】:

    标签: python arrays numpy matplotlib


    【解决方案1】:

    你可以的

    import matplotlib.pyplot as plt
    
    plt.plot(*result.T)
    

    * 是一种解压列表的奇特方式,请参阅here

    【讨论】:

      【解决方案2】:

      你可以像这样得到 numpy 数组的切片:

      import numpy as np
      a = np.array([[0, 1], [2, 3], [4, 5]])
      
      >>> a
      array([[0, 1],
             [2, 3],
             [4, 5]])
      
      >>> a[:,0]
      array([0, 2, 4])
      
      >>> a[:,1]
      array([1, 3, 5])
      

      所以如果第一列有你的 x 值,第二列有你的 y 值,你会绘制如下:

      import matplotlib.pyplot as plt
      plt.plot(a[:, 0], a[:, 1])
      plt.show()
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-02-22
        • 2019-10-29
        • 2023-03-11
        • 2022-07-12
        • 2020-04-18
        • 1970-01-01
        • 2015-02-20
        相关资源
        最近更新 更多