function my_zoom(varargin);

zoom(varargin{:});

s=get(gcf,'userData');
params=get(s.axes,'userData');

ax=axis;
flag;
level=100;
n=3;

while flag|(ax(1)==ax(2))|(ax(3)==ax(4)),
	signif=round(ax)+(round(ax)==0);
	ax=round(ax./signif*level).*signif/level;
	flag==0;
	level=level*10;
	n=n+1;
end

set(params.Info,'String',mat2str(ax,n));

redraw_fig_hook;
