二维图
m1=3.67;m2=0.1;m=m1+m2;
x1=119.38;y1=-4.59;z1=129.58;
R=65.6;r1=25;B=252;
l1=230;l3=95.96;
u=0.95;g=9.8;
F=40;
b=0:0.5:180;%自变量
xG=(m1.*x1+m2*l1+m2*l3.*cosd(b))./(m1+m2);
yG=(m1.*y1+m2.*l3.*sind(b))./(m1+m2);
zG=(m1.*z1+m2.*B./2)./(m1+m2);
a1=atand(xG./(yG+R));%函数
%绘图+标题栏
plot(b,a1,"LineWidth",0.3,"Color",'k')
xlabel('摆臂角度\beta / (\circ) ');
ylabel('坡度\alpha / (\circ)');
title('坡度\alpha与摆臂角度\beta变换规律');%坐标名称
%标记显示最小点坐标
hold on;
[y_min,x_min]=min(a1);%函数最小值的纵坐标,横坐标
plot(b(x_min),a1(x_min),'*',"Color",'r')
str={['(',num2str(b(x_min)),' , ',num2str(a1(x_min)),')']};
text(b(x_min),a1(x_min),str,'color','k');
for i=[1,361]%显示第一个及最后一个坐标
plot(b(i),a1(i),'*',"Color",'r');
str1={['(',num2str(b(i)),',',newline,num2str(a1(i)),')']};%newline换行
text(b(i),a1(i),str1,'color','k');
end%绘制第一个点的坐标
三维图
A=0:10:100;B=100:5:200;%重新定义一组AB,便于在图上标注最值点
[a,b]=meshgrid(0:10:100,100:5:200);
z=a.*b;
surf(a,b,z,"EdgeColor","flat");
zmax=max(max(z));%函数最值
[id_y,id_x]=find(z==zmax);
hold on
plot3(A(id_x),B(id_y),zmax,'r*');%绘制出最大值点位置,用A,B重新定义ab,横纵坐标第几个显示出来
str={[' (','a=',num2str(A(id_x)),' b=',num2str(B(id_y)),' z=',num2str(zmax),')']};
text(A(id_x),B(id_y),zmax,str,"FontSize",13); %标出坐标