반응형
축 중 하나에 눈금이나 숫자가없는 그림을 그리려고합니다 (나는 matplotlib 명명법이 아닌 전통적인 의미에서 축을 사용합니다!). 내가 만난 문제는 matplotlib가 값 N을 빼서 x (y) ticklabels를 조정 한 다음 축 끝에 N을 추가하는 것입니다.
이것은 모호 할 수 있지만 다음 단순화 된 예는 문제를 강조하며 '6.18'은 N의 문제가되는 값입니다.
import matplotlib.pyplot as plt
import random
prefix = 6.18
rx = [prefix+(0.001*random.random()) for i in arange(100)]
ry = [prefix+(0.001*random.random()) for i in arange(100)]
plt.plot(rx,ry,'ko')
frame1 = plt.gca()
for xlabel_i in frame1.axes.get_xticklabels():
xlabel_i.set_visible(False)
xlabel_i.set_fontsize(0.0)
for xlabel_i in frame1.axes.get_yticklabels():
xlabel_i.set_fontsize(0.0)
xlabel_i.set_visible(False)
for tick in frame1.axes.get_xticklines():
tick.set_visible(False)
for tick in frame1.axes.get_yticklines():
tick.set_visible(False)
plt.show()
제가 알고 싶은 세 가지는 다음과 같습니다.
처음에이 동작을 끄는 방법 (대부분의 경우 유용하지만 항상 그런 것은 아닙니다!) matplotlib.axis.XAxis
를 살펴 봤지만 적절한 것을 찾을 수 없습니다
N을 사라지게하려면 어떻게해야하나요 (예 : X.set_visible (False)
)
어쨌든 위의 작업을 수행하는 더 좋은 방법이 있습니까? 내 최종 플롯은 그림에서 4x4 서브 플롯이 될 것입니다.
해결 방법
각 요소를 숨기는 대신 전체 축을 숨길 수 있습니다.
frame1.axes.get_xaxis().set_visible(False)
frame1.axes.get_yaxis().set_visible(False)
또는 눈금을 빈 목록으로 설정할 수 있습니다.
frame1.axes.get_xaxis().set_ticks([])
frame1.axes.get_yaxis().set_ticks([])
이 두 번째 옵션에서도 plt.xlabel ()
및 plt.ylabel ()
을 사용하여 축에 레이블을 추가 할 수 있습니다.
참조 페이지 https://stackoverflow.com/questions/2176424
반응형
'파이썬' 카테고리의 다른 글
파이썬 numpy 및 scipy의 계승 (0) | 2020.12.23 |
---|---|
파이썬 numpy 배열에 요소 삽입 (0) | 2020.12.23 |
파이썬 Python : Pandas를 사용하여 열 단위로 숫자 크기 조정 (0) | 2020.12.23 |
파이썬 TypeError : 인수 값이 여러 개 있습니다. (0) | 2020.12.23 |
파이썬 Python 제한 비선형 최적화 (0) | 2020.12.23 |
댓글