我做了一个简单的应用程序,其中一行读取某个函数,然后必须在代码中执行计算并显示一个图形。但问题是函数self.ui.lineEdit.text()
读取为字符串,结果没有进行任何计算,X和Y不是变量,而是二维数组,所以int()函数是不行的。如果您在代码本身中输入 Z 值,则一切正常
fig = pylab.figure()
axes = Axes3D(fig)
first = int(self.ui.lineEdit_2.text())
second = int(self.ui.lineEdit_3.text())
h = float(self.ui.lineEdit_4.text())
x = np.arange(first, second, h)
y = np.arange(first, second, h)
x, y = np.meshgrid(x, y)
z = self.ui.lineEdit.text()
surf = axes.plot_surface(x, y, z, cmap=cm.coolwarm)
fig.colorbar(surf, shrink=0.5, aspect=5)
axes.set_xlabel('x', color="grey")
axes.set_ylabel('y', color="grey")
axes.set_zlabel('z', color="grey")
pylab.title("График")
pylab.show()
如果
self.ui.lineEdit.text()
写入文本“x*y”,则计算它如果有一个带方括号的二维数组
例如
然后适合
或者