기본 “박스형”축 스타일 대신 왼쪽 및 아래쪽 축만 갖고 싶습니다.
+------+ |
| | |
| | ---> |
| | |
+------+ +-------
이것은 쉬워야하지만 문서에서 필요한 옵션을 찾을 수 없습니다.
답변
이 공식 웹 사이트에서 제안하기 matplotlib 3 솔루션입니다 여기 :
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x)
ax = plt.subplot(111)
ax.plot(x, y)
# Hide the right and top spines
ax.spines['right'].set_visible(False)
ax.spines['top'].set_visible(False)
# Only show ticks on the left and bottom spines
ax.yaxis.set_ticks_position('left')
ax.xaxis.set_ticks_position('bottom')
plt.show()
답변
또는이
def simpleaxis(ax):
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.get_xaxis().tick_bottom()
ax.get_yaxis().tick_left()
회전 된 레이블 지원을 잃지 않고 축에 동일한 효과를 얻는 것 같습니다.
(Matplotlib 1.0.1; 이것에서 영감을 얻은 솔루션 ).
답변
[편집] matplotlib (버전 1.3.0) (지금 포함) (2013-10)
이 기능은 실제로 추가되었으므로 Subversion 버전이 필요합니다. 여기 에서 예제 코드를 볼 수 있습니다 .
온라인 에서 더 좋은 예가 있다고 말하기 위해 업데이트 중입니다. 그래도 Subversion 버전이 필요하지만 아직 출시되지 않았습니다.
[편집] Matplotlib 0.99.0 RC1이 방금 릴리스되었으며이 기능이 포함되어 있습니다.
답변
(이것은 포괄적 인 답변 외에도 여기에 대한 확장 설명입니다.)
이 세 요소 각각을 서로 독립적으로 숨길 수 있습니다.
-
경계를 숨기려면 (일명 “척추”) :
ax.set_frame_on(False)
또는ax.spines['top'].set_visible(False)
-
진드기를 숨기려면
ax.tick_params(top=False)
-
레이블을 숨기려면
ax.tick_params(labeltop=False)
답변
진드기 등이 필요하지 않은 경우 (예 : 질적 그림 그리기)이 빠른 해결 방법을 사용할 수도 있습니다.
축을 보이지 않게하고 (예 :로 plt.gca().axison = False
) 축 으로 수동으로 그립니다 plt.arrow
.
답변
Seaborn 라이브러리에는 despine () 함수가 내장되어 있습니다.
다음을 추가하십시오.
import seaborn as sns
이제 그래프를 작성하십시오. 그리고 끝에 추가하십시오 :
sns.despine()
함수의 기본 매개 변수 값 중 일부를 보면 위쪽 및 오른쪽 척추를 제거하고 아래쪽 및 왼쪽 척추를 유지합니다.
sns.despine(top=True, right=True, left=False, bottom=False)
https://seaborn.pydata.org/generated/seaborn.despine.html 에서 추가 문서를 확인하십시오.
답변
모든 플롯에서 제거해야하는 경우 스타일 설정 (스타일 시트 또는 rcParams)에서 스파인을 제거 할 수 있습니다. 예 :
import matplotlib as mpl
mpl.rcParams['axes.spines.right'] = False
mpl.rcParams['axes.spines.top'] = False
모든 척추를 제거하려는 경우 :
mpl.rcParams['axes.spines.left'] = False
mpl.rcParams['axes.spines.right'] = False
mpl.rcParams['axes.spines.top'] = False
mpl.rcParams['axes.spines.bottom'] = False