我正在使用MATLAB中的应用程序设计器,我在用户输入一组参数并按下按钮然后生成等高线图。该应用程序首先使用dlmread将数据从3个单独的文件保存到工作区。那么目标是在同一个GUI上生成相应的轮廓图,使用来自这3个文件的数据(我的x,y和z参数)。
但是,当我运行该程序时,我收到一条错误消息:
"Error setting property 'HetroTransSpec' of class 'Parameters':
Cannot convert double value 5 to a handle"
app.HetroTransSpec
是我的等高线图的名称。 Parameters
是我的GUI应用程序的名称。我将提供代码:
function SetParametersButtonPushed(app, event)
spec = dlmread('/Users/******/MATLAB/SphoHetroTest/Spec3.txt'); %Load spec file
assignin('base', 'spec', spec);
pop=dlmread('/Users/******/MATLAB/SphoHetroTest/pop.txt');
assignin('base', 'pop', pop);
lambda=dlmread('/Users/******/MATLAB/SphoHetroTest/lambda.txt'); %read wavelenght axis (nm)
assignin('base', 'lambda', lambda);
现在,我的代码是采用这些参数(spec,pop,lambda)来生成轮廓图。除了我收到这个错误:
app.HetroTransSpec = contourf(pop,lambda,spec);
非常感谢任何帮助!
答案 0 :(得分:1)
等高线图的结果不是手柄,而是轮廓数据,而不是其他一些绘图功能。
尝试:
#!/bin/bash
function python_print() {
PYTHON_ARG="$1" python - <<END
import os
p = str(os.environ['PYTHON_ARG'])
print('The Variable is ' + p)
END
}
DIRIN=$1
FULLPATH=$ realpath $OUTFILE
python_print $FULLPATH