如何反转y_axis?Z是np.array.Thank你
Z=TempLake
X,Y=np.meshgrid(range(Z.shape[0]+1),range(Z.shape[1]+1))
im = plt.pcolormesh(X,Y,Z.transpose(), cmap='hot')
plt.colorbar(im, orientation='horizontal')
plt.show()
Run Code Online (Sandbox Code Playgroud)
我有这个:
我需要这个:
为什么我收到此错误消息?ValueError:使用序列设置数组元素.谢谢
Z=np.array([1.0,1.0,1.0,1.0])
def func(TempLake,Z):
A=TempLake
B=Z
return A*B
Nlayers=Z.size
N=3
TempLake=np.zeros((N+1,Nlayers))
kOUT=np.zeros(N+1)
for i in xrange(N):
kOUT[i]=func(TempLake[i],Z)
Run Code Online (Sandbox Code Playgroud) 由此循环产生的np.array有4383行和6列.我试过没有成功使用matplotlib(pylab)中的pylab.imshow()来显示数组.目标是创建数组的图像,颜色渐变表示数组值的大小.阵列的每一行代表每天湖泊温度的深度变化(4383天).因此,目标是在深度和时间上找到湖泊温度的差异.谢谢
TempLake=np.zeros((N+1,Nlayers))
TempLake[0]=T0
Q=np.zeros(N+1)
Q[0]=0.0
for i in xrange(N):
Q[i+1]=Qn(HSR[i],TD[i],FW[i],TempLake[i][0])
TempLake[i+1]=main_loop(Z,z,Areat0,Areat1,TempLake[i],wind[i],Q[i],Q[i+1])
np.savetxt('test.out', TempLake, delimiter=',')
np.savetxt('test1.out', Q, delimiter=',')
pylab.imshow(TempLake)
pylab.show()
Run Code Online (Sandbox Code Playgroud) 我正在尝试将2D numpy数组写入CSV文件我试过这个:
import csv
import numpy as np
w = csv.writer(open('main.csv','w'))
Nlayers=23
N=364
TempLake=np.zeros((N,Nlayers))
for i in xrange(N-1):
TempLake[i+1]=TempLake[i]+100
w.writerow(TempLake)
outfile = open('main.csv', 'w')
writer = csv.writer(outfile)
ar=np.array(TempLake)
for row in TempLake:
writer.writerow(row)
outfile.close()
Run Code Online (Sandbox Code Playgroud)
为什么有些行仍然有引号?谢谢
在np.array
从这个循环的结果有4383行6列.我试过没有成功使用pylab.imshow()
matplotlib(pylab)来显示数组.目标是创建数组的图像,颜色渐变表示数组值的大小.阵列的每一行代表每天湖泊温度的深度变化(4383天).因此,目标是在深度和时间上找到湖泊温度的差异.谢谢
TempLake=np.zeros((N+1,Nlayers))
TempLake[0]=T0
Q=np.zeros(N+1)
Q[0]=0.0
for i in xrange(N):
Q[i+1]=Qn(HSR[i],TD[i],FW[i],TempLake[i][0])
TempLake[i+1]=main_loop(Z,z,Areat0,Areat1,TempLake[i],wind[i],Q[i],Q[i+1])
im = plt.imshow(tem, cmap='hot')
plt.colorbar(im, orientation='horizontal')
plt.show()
Run Code Online (Sandbox Code Playgroud)
结果如下:图例很好,但x轴反转,图像不显示
这就是我需要的:
要替换我使用的主对角线np.fill_diagonal
:
matrix = np.zeros((4, 4), float)
main = np.array([2,2,2,2])
np.fill_diagonal(matrix, main)
Run Code Online (Sandbox Code Playgroud)
但我还需要更换主对角线旁边的上下对角线:
upper=np.array([1,1,1])
lower=np.array([7,7,7])
Run Code Online (Sandbox Code Playgroud)
要得到:
matrix=[[2 1 0 0]
[7 2 1 0]
[0 7 2 1]
[0 0 7 2]]
Run Code Online (Sandbox Code Playgroud)
谢谢