具有二维数组的Python Matplotlib Hist2d

2024-05-10 06:28:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用两个二维数组作为参数,Tx和alt_数组,同样大小(56000,40),来制作一个二维的历史程序

def histo_2D(alt, Tx):  
u,v = 56000,40
Tx = np.zeros((u,v))
alt_array = np.zeros((u,v))
alt,tx = np.zeros((v)), np.zeros((v))
for i in range(0,v):
    alt[i] = i
    tx[i] = i
alt_array[:][:] = alt 
Tx[:][:] = tx
    alt_array[:][:] = alt 
    print np.shape(Tx), np.shape(alt_array)
    plt.hist2d(Tx , alt_array)

但是,当我尝试执行我的程序时,我会收到以下错误消息:

Traceback (most recent call last):
  File "goccp.py", line 516, in <module>
    histo_2D(alt,Tx)
  File "goccp.py", line 376, in histo_2D
    plt.hist2d(Tx , alt_array)
  File "/Code/anaconda/lib/python2.7/site-packages/matplotlib/pyplot.py", line 2847, in hist2d
    weights=weights, cmin=cmin, cmax=cmax, **kwargs)
  File "/Code/anaconda/lib/python2.7/site-packages/matplotlib/axes.py", line 8628, in hist2d
    normed=normed, weights=weights)
  File "/Code/anaconda/lib/python2.7/site-packages/numpy/lib/twodim_base.py", line 650, in histogram2d
    hist, edges = histogramdd([x, y], bins, range, normed, weights)
  File "/Code/anaconda/lib/python2.7/site-packages/numpy/lib/function_base.py", line 288, in histogramdd
    N, D = sample.shape
ValueError: too many values to unpack

我试过使用扁平数组,但效果不是很好。。。


Tags: inpylibnplinezerossitecode
1条回答
网友
1楼 · 发布于 2024-05-10 06:28:59

documentation for ^{}声明:

matplotlib.pyplot.hist2d(x, y, bins=10, range=None, normed=False, weights=None, cmin=None, cmax=None, hold=None, **kwargs)

Parameters: x, y: array_like, shape (n, ) :

因此xy需要是一维的;您的值是二维的。

请看一下文档末尾给出的示例。

相关问题 更多 >