Using a loaded table in the main program in a function

조회 수: 10 (최근 30일)
Kshitij D
Kshitij D 2017년 3월 9일
댓글: Kshitij D 2017년 3월 10일

I have the user of my matlab program load a table and my code reads the values for certain properties (stored in columns) from the table. I wrote a Matlab function that would interpolate the values from the table.

function [rho_o,B_o,mu_o,Rso] = oil_prop_sat(Po)

rho_o=interp1(Po_data(1:10),rho_o_data(1:10),Po,'linear');

B_o=interp1(Po_data(1:10),B_o_data(1:10),Po,'linear');

mu_o=interp1(Po_data(1:10),mu_o_data(1:10),Po,'linear');

Rso=interp1(Po_data(1:10),Rso_data(1:10),Po,'linear');

But when I try and use the function into the main program, it gives my the error Undefined function or variable 'Po_data'. I understand that because I am not loading the data into the function, hence it is unable to find anything named Po_data. But I don't want the user to reinput the table every time I have to run the function (which is a lot of times).

답변 (1개)

Image Analyst
Image Analyst 2017년 3월 9일
You can retrieve the data from the uitable from any callback function that has access to the handle of the uitable, which means any callback functions of any controls you placed on the GUi with GUIDE.
Po_data = handles.uitable1.Data; % uitable1 is the table where the user entered Po_data.
  댓글 수: 1
Kshitij D
Kshitij D 2017년 3월 10일
would this be included in the function or the main program?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Develop Apps Using App Designer에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by