作业帮 > 综合 > 作业

matlab隐函数画图

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/02 08:02:09
matlab隐函数画图
h=ezplot('log10((0.036-1.93*y)*(0.0045-y))=-7184/(x+273)+1.79');
set(h,'LineStyle','--','color','r') ;
xlabel('x');
ylabel('y');
这个函数我画不出来- - 图不显示啊 X的范围是400-900 Y应该在0-0.0045之间 并且标出X=700 740 780 820 860的点啊
clear;
clc;
h=ezplot('log10((0.036-1.93*y)*(0.0045-y))=-7184/(x+273)+1.79',[400 900 0 0.0045]);
set(h,'LineStyle','--','color','r') ;
set(gca,'xticklabel',{'700';'740';'780';'820';'860'});
set(gca,'xtick',700:40:860);
f=@(x,y)(log10((0.036-1.93.*y).*(0.0045-y))+7184./(x+273)-1.79);
x=700:40:860;
xx=zeros(1,length(x));
yy=zeros(1,length(x));
for i=1:length(x)
xx(i)=x(i);
yy(i)=fsolve(@(y)f(x(i),y),0);
s=['\leftarrowy=',num2str(yy(i))];
text(xx(i),yy(i),s);
end
xlabel('x');
ylabel('y');
grid on;
再问: 大神,我想知道由于Y是关于0.0045的两条渐近线,我只想要下一条,并且y轴区间能取到0.006-0.007 以便我所标注的点在图的相对中间部位 应该怎么样删去上面半条渐近线
再答: clear;
clc;
h=ezplot('log10((0.036-1.93*y)*(0.0045-y))=-7184/(x+273)+1.79',[400 900],[0 0.0045]);
C=get(h,'contourMatrix');
x1=C(1,2:end);
y1=C(2,2:end);
% x2=get(h(2),'XData');
% y2=get(h(2),'YData');
set(h,'LineStyle','--','color','r') ;
set(gca,'xticklabel',{'700';'740';'780';'820';'860'});
set(gca,'xtick',700:40:860);
f=@(x,y)(log10((0.036-1.93.*y).*(0.0045-y))+7184./(x+273)-1.79);
x=700:40:860;
xx=zeros(1,length(x));
yy=zeros(1,length(x));
for i=1:length(x)
xx(i)=x(i);
yy(i)=fsolve(@(y)f(x(i),y),0);
s=['\leftarrowy=',num2str(yy(i))];
text(xx(i),yy(i),s);
end

xlabel('x');
ylabel('y');
grid on;
figure;
plot(x1,y1');
axis([600 900 0 0.007]);
grid on;