我试图从一个有四个coloumns和700行的文本文件中获取一个3D表面图。我已经编写了下面的代码来生成该图,但我不断收到以下错误:invalid value encountered in true_divide
z = (x*y*mlim)/(x*y)
raise ValueError("Argument Z must be 2-dimensional.")
ValueError: Argument Z must be 2-dimensional.
这是我的代码from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import numpy as np
f2 = open('openfile.txt', 'r')
i6 = list()
i9 = list()
i10 = list ()
count = 0
while True:
a = f2.readline()
if not a: break
v = a.split()
i6.append(float(v[0]))
i9.append(float(v[1]))
i10.append(float(v[3]))
count = count + 1
mlim = np.array(i6)
ira = np.array(i9)
dec = np.array(i10)
x = ira
y = dec
z = (x*y*mlim)/(x*y)
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_wireframe(x,y,z, rstride=10, cstride=10)
plt.savefig('filesave.png')
plt.close()
我该如何解决这个问题?我还附上了实际文本文件的图像, 请点击此处
谢谢。