修改后的代码如下:

close all; clear;clc

function y = myfunc(x) x_data=[0 40 70 99.7]; y_data=[12 1801 3207 4001]; f=polyfit(x_data,y_data,2); y=polyval(f,x); end

x_input = input('单片机读数:'); y_output = myfunc(x_input); disp(['对应的浓度理论值为:',num2str(y_output)]);

% figure % plot(x_data,y_data,'-.'); % % xlabel('Density(%)','FontName','Times New Roman','FontSize',12); % ylabel('Amount','FontName','Times New Roman','FontSize',12); % title("Data") % set(gcf,'color','w') % set(gca,'YLim',[0,4095]); % set(gca,'XLim',[0,100]); % set(gcf,'Position',[30,70,800,400]); % box off % grid on

%注意:函数定义要放在主程序前面,这里没有主程序,所以放在最前面

利用matlab开发一个用户输入一个值通过实验数据拟合出的函数返回一个对应值的程序代码如下:close all; clear;clcfunction y = myfuncx x_data=0 40 70 997; y_data=12 1801 3207 4001; f=polyfitx_datay_data2; y=polyvalfx;end figure plotx_da

原文地址: https://www.cveoy.top/t/topic/hsyB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录