这样:
x=0:100;
y=-(x-25).^2;
plot(x,y);%绘出曲线
axis([x(1),x(end),min(y),min(y)+(max(y)-min(y))*1.5]);%为了图好看,不使最大值顶天
maxy=max(y);%找出y最大值
maxx=x(find(y==maxy));%找出y最大值对应的x值
ax=axis;%获得当前坐标的范围
hold on;%保持图像
plot([ax(1),ax(2)],[maxy,maxy],'r:',[maxx,maxx],[ax(3),ax(4)],'r:');%绘制纵横线
注意事项
求矩阵A的最大值的函数有3种调用格式,分别是:
1、max(A):返回一个行向量,向量的第i个元素是矩阵A的第i列上的最大值。
2、[Y,U]=max(A):返回行向量Y和U,Y向量记录A的每列的最大值,U向量记录每列最大值的行号。
3、max(A,[],dim):dim取1或2。dim取1时,该函数和max(A)完全相同;dim取2时,该函数返回一个列向量,其第i个元素是A矩阵的第i行上的最大值。
求最小值的函数是min,其用法和max完全相同。
Matlab中max函数在矩阵中求函数大小的实例如下:
C = max(A)
1、返回一个数组各不同维中的最大元素。
2、如果A是一个向量,max(A)返回A中的最大元素。
3、如果A是一个矩阵,max(A)将A的每一列作为一个向量,返回一行向量包含了每一列的最大元素。
4、如果A是多维数组,max(A)treats the values along the first non-singleton dimension as vectors, returningthe maximum value of each vector.
matlab中怎样在图像最大值点处画出过最大值点的横线和纵线???
maxx=x(find(y==maxy));%找出y最大值对应的x值 ax=axis;%获得当前坐标的范围 hold on;%保持图像 plot([ax(1),ax(2)],[maxy,maxy],'r:',[maxx,maxx],[ax(3),ax(4)],'r:');%绘制纵横线
matlab中怎样在图像最大值点处画出过最大值点的横线和纵线???
maxx=x(find(y==maxy));%找出y最大值对应的x值 ax=axis;%获得当前坐标的范围 hold on;%保持图像 plot([ax(1),ax(2)],[maxy,maxy],'r:',[maxx,maxx],[ax(3),ax(4)],'r:');%绘制纵横线
matlab中怎样在图像最大值点处画出过最大值点的横线和纵线???
maxx=x(find(y==maxy));%找出y最大值对应的x值 ax=axis;%获得当前坐标的范围 hold on;%保持图像 plot([ax(1),ax(2)],[maxy,maxy],'r:',[maxx,maxx],[ax(3),ax(4)],'r:');%绘制纵横线