wplothis.m
上传用户:haiyisale
上传日期:2013-01-09
资源大小:3246k
文件大小:2k
源码类别:

波变换

开发平台:

Matlab

  1. function varargout = wplothis(axe,pcoor,cfill,cline)
  2. %WPLOTHIS Plots histogram obtained with WGETHIST.
  3. %   WPLOTHIS(A,P,CFILL,CLINE) or
  4. %   WPLOTHIS(A,P,CFILL) or
  5. %   WPLOTHIS(A,P)
  6. %   A       = axes handle.
  7. %   P(1,:)  = X coordinates of points of histogram.
  8. %   P(2,:)  = Y coordinates of points of histogram.
  9. %   CFILL   = color for filling histogram.
  10. %   CLINE   = line color.
  11. %
  12. %   See also WGETHIST.
  13.   
  14. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 01-May-96.
  15. %   Last Revision: 05-Oct-1998.
  16. %   Copyright 1995-2002 The MathWorks, Inc.
  17. % $Revision: 1.11 $
  18. if nargin==2, cfill = 'r'; end
  19. old_units = get(axe,'Units');
  20. set(axe,'Units','pixels'); 
  21. pos = get(axe,'Position');
  22. set(axe,'Units',old_units); 
  23. nb_clas = size(pcoor,2)/4;
  24. mx_clas = pos(3)/3;
  25. if nargin==4 | nb_clas>mx_clas
  26.     plot_line = 1;
  27.     if nb_clas>mx_clas , cline = cfill; end
  28. else
  29.     plot_line = 0;  
  30. end
  31. tag_axe = get(axe,'Tag');
  32. hdl_fil = fill(pcoor(1,:),pcoor(2,:),cfill,'parent',axe);
  33. hdl_lin = [];
  34. if plot_line
  35.     set(axe,'NextPlot','Add');
  36.     hdl_lin = plot(pcoor(1,:),pcoor(2,:),'Color',cline,'Parent',axe);
  37.     set(axe,'NextPlot','Replace');
  38. end
  39. set(axe,'Units','Normalized'); 
  40. h = get(axe,'Position');
  41. n = 5*h(4);
  42. yaxis = [0 max(pcoor(2,:))];
  43. dval  = (yaxis(2)-yaxis(1))/(100*n);
  44. yaxis = yaxis + [-dval dval];
  45. if yaxis(1)==yaxis(2) ,  yaxis = yaxis+[-0.01 0.01]; end
  46. xaxis = [min(pcoor(1,:)) max(pcoor(1,:))];
  47. dval  = (xaxis(2)-xaxis(1))/100;
  48. xaxis = xaxis + [-dval dval];
  49. if xaxis(1)==xaxis(2) , xaxis = xaxis+[-0.01 0.01]; end
  50. set(axe,'XLim',xaxis,'YLim',yaxis);
  51. set(axe,'Units',old_units,'Tag',tag_axe);
  52. if nargout>0 , varargout{1} = [hdl_fil;hdl_lin]; end