|
209 | 209 | case 0 |
210 | 210 | MMFun=@max; |
211 | 211 | case 1 |
212 | | - if min(ruler2num(Descriptors.YData(D,:),Descriptors.ObjectA.Parent.YAxis),[],2,ComparisonMethod='abs')<0 |
| 212 | + if min(ruler2num(Descriptors.YData(D,:),Descriptors.ObjectA(D).Parent.YAxis),[],2,ComparisonMethod='abs')<0 |
213 | 213 | MMFun=@min; |
214 | 214 | else |
215 | 215 | MMFun=@max; |
|
220 | 220 | Descriptors.FinalYData(D)=MMFun(Descriptors.YData(Logical(:,:,D))); |
221 | 221 | end |
222 | 222 | FinalYData=ylim; |
223 | | - FinalYData=Descriptors.FinalYData+(FinalYData(2)-FinalYData(1))/10; |
| 223 | + FinalYData=Descriptors.FinalYData+(FinalYData(2)-FinalYData(1))/10.*sign(Descriptors.FinalYData); |
224 | 224 | hold(Ax,'on'); |
225 | 225 | Lines=plot(Ax,Descriptors.XData.',[FinalYData,FinalYData].','k'); |
226 | 226 | Logical=Descriptors.FinalYData<0; |
|
246 | 246 | Logical=AllExtent(:,2)<0; |
247 | 247 | AllXData=AllExtent(:,[1,3]); |
248 | 248 | AllXData(:,2)=AllXData(:,1)+AllXData(:,2); |
249 | | - [MinX,MaxX]=bounds([vertcat(ruler2num(Lines.XData,XRuler)),AllXData],2);%Lines.XData不一定是数值类型,因此必须转换成数值 |
| 249 | + [MinX,MaxX]=bounds([vertcat(ruler2num(vertcat(Lines.XData),XRuler)),AllXData],2);%Lines.XData不一定是数值类型,因此必须转换成数值 |
250 | 250 | AllXData=[MinX,MaxX]; |
251 | 251 | while true |
252 | 252 | AllYData=[AllExtent(:,2),AllExtent(:,4)+AllExtent(:,2)]; |
|
0 commit comments