Matplotlib에서는 두 값 범위 사이의 불연속을 나타내도록 x축 모양을 수정할 수 있습니다.
축을 직접 생성할 수 있는 방법은 없지만 불연속 축의 경우 축 레이블과 모양을 사용자 정의하여 유사한 효과를 얻을 수 있습니다. 한 가지 접근 방식은 사용자 정의 변환을 사용하여 불연속 축을 생성하는 것입니다.
사용자 정의 변환을 생성하지 않으려면 하위 도표를 사용하여 원하는 효과를 얻을 수 있습니다. 서로 다른 x축 제한이 있는 두 개의 하위 플롯을 생성하고 그 사이에 스파인을 숨겨 불연속 축을 시뮬레이션할 수 있습니다.
import matplotlib.pyplot as plt import numpy as np x = np.r_[0:1:0.1, 9:10:0.1] y = np.sin(x) fig, (ax, ax2) = plt.subplots(1, 2, sharey=True) ax.plot(x, y, 'bo') ax2.plot(x, y, 'bo') ax.set_xlim(0, 1) ax2.set_xlim(9, 10) ax.spines['right'].set_visible(False) ax2.spines['left'].set_visible(False) ax.yaxis.tick_left() ax2.yaxis.tick_right() plt.subplots_adjust(wspace=0.15) plt.show()
이 코드는 각각 두 개의 하위 플롯이 있는 플롯을 생성합니다. x값의 다양한 범위를 보여줍니다. 서브플롯 간의 겹침을 숨겨 불연속적인 축 모양을 만듭니다.
깨진 축 선(//) 효과를 추가하려면 다음 코드를 사용할 수 있습니다.
ax.plot((1-d,1+d),(-d,+d), **kwargs) # top-left diagonal ax.plot((1-d,1+d),(1-d,1+d), **kwargs) # bottom-left diagonal kwargs.update(transform=ax2.transAxes) # switch to the bottom axes ax2.plot((-d,d),(-d,+d), **kwargs) # top-right diagonal ax2.plot((-d,d),(1-d,1+d), **kwargs) # bottom-right diagonal
여기서 d는 축 좌표의 대각선 크기를 나타냅니다. 각 축의 모서리에 대각선을 추가하여 축이 부러진 듯한 느낌을 주는 코드입니다.
위 내용은 Matplotlib에서 불연속 X축을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!