How can I use subplots with an inside function?
    조회 수: 6 (최근 30일)
  
       이전 댓글 표시
    
I am trying to create a figure with 6 subplots. My 'polygon' function creates a regular plot. The subplot command doesn't seem to recognize the function as a plot, and only the last plot is displayed (as a full plot). What am I missing? Thanks!
function draw_polygons()
subplot(2,3,1)
polygon(3);
subplot(2,3,2)
polygon(4);
subplot(2,3,3)
polygon(5);
subplot(2,3,4)
polygon(6);
subplot(2,3,5)
polygon(7);
subplot(2,3,6)
polygon(8);
end
댓글 수: 5
  Daniel Shub
      
      
 2013년 3월 8일
				What happens if you just do
subplot(2,3,1)
subplot(2,3,2)
subplot(2,3,3)
subplot(2,3,4)
subplot(2,3,5)
subplot(2,3,6)
답변 (3개)
  Image Analyst
      
      
 2013년 3월 8일
        Are you saying that this code does not produce 6 plots? Because it does for me (both functions are in test.m):
function test
  subplot(2,3,1)
  polygon(3);
  subplot(2,3,2)
  polygon(4);
  subplot(2,3,3)
  polygon(5);
  subplot(2,3,4)
  polygon(6);
  subplot(2,3,5)
  polygon(7);
  subplot(2,3,6)
  polygon(8);
end
function polygon(sides)
  degrees=2*pi/sides;
  theta=0:degrees:2*pi;
  radius=ones(1,numel(theta));
  graph=polar(theta,radius);
  set(graph,'color','b','linewidth',2)
end
댓글 수: 3
  Image Analyst
      
      
 2013년 3월 8일
				
      편집: Image Analyst
      
      
 2013년 3월 8일
  
			It should work in a single file, or two different m-files. You must have a close() or clf in there somewhere.
  Leah
      
 2013년 3월 8일
        make sure you don't have a close or figure command inside of polygon
you could always try to step through with debugger to find out exactly what is happening in your code
  Jake_K
 2018년 4월 30일
        I guess your problem is that you always open a new figure in your polygon function. So take out figure() and it should work.
댓글 수: 0
참고 항목
카테고리
				Help Center 및 File Exchange에서 Subplots에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





