> 백엔드 개발 > 파이썬 튜토리얼 > Matplotlib에서 불연속 X축을 만드는 방법은 무엇입니까?

Matplotlib에서 불연속 X축을 만드는 방법은 무엇입니까?

DDD
풀어 주다: 2024-11-27 04:55:10
원래의
562명이 탐색했습니다.

How to Create a Discontinuous X-axis in Matplotlib?

Matplotlib에서 불연속 축 생성

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿