Breaking the axis of plots (without external packages etc)
    조회 수: 6 (최근 30일)
  
       이전 댓글 표시
    
Is there a simple way to break the axis of my plot without falling a function from the mathworks public package repository etc? I.e. hard code it in my script?
댓글 수: 2
답변 (1개)
  Star Strider
      
      
 2023년 6월 4일
        I am not certain what you want, so I decided to give this a shot just out of interest — 
x = [linspace(0, 10, 11); linspace(20, 30, 11)];                                                    % Create Data
y = [sin(x(1,:)*2*pi*0.09); sin(x(2,:)*2*pi*0.05)];                                                 % Create Data
figure
subplot(1,2,1)
plot(x(1,:), y(1,:))                                                                                % Plot First Group
Ax1 = gca;
yt = Ax1.YTick;                                                                                     % Get Y-Tick Values
tl = Ax1.TickLength(1)*20;
hold on
plot(([0;tl]*ones(size(yt))), [1;1]*yt, '-k')                                                       % Create New Y-Yicks
hold off
grid
Ax1.YAxis.Visible = 0;                                                                              % Turn Off Y-Axis
xline(0)
text(zeros(size(yt))-0.05*diff(xlim), yt, compose('%.1f',yt), 'Vert','middle', 'Horiz','right')     % Label New Ticks
subplot(1,2,2)
plot(x(2,:), y(2,:))                                                                                % Plot Second Group
grid
Ax2 = gca;
Ax2.YAxis.Visible = 0;                                                                              % Turn Off Y-Axis
Add axis labels and other options (this may require separate text calls to put them in the correct positions).  Use sgtitle to add a unified title.  
.
댓글 수: 0
참고 항목
카테고리
				Help Center 및 File Exchange에서 Graphics Object Properties에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



