반응형
matplotlib에서 서브 플롯에 대해 xlim 및 ylim을 설정하는 방법
이 질문에는 이미 답변이 있습니다.
matplotlib에서 X 및 Y 축을 제한하고 싶지만 특정 하위 플롯을 원합니다. 보시다시피 서브 플롯 그림 자체에는 축 속성이 없습니다. 예를 들어 두 번째 줄거리의 한계 만 변경하고 싶습니다!
import matplotlib.pyplot as plt
fig=plt.subplot(131)
plt.scatter([1,2],[3,4])
fig=plt.subplot(132)
plt.scatter([10,20],[30,40])
fig=plt.subplot(133)
plt.scatter([15,23],[35,43])
plt.show()
상태 머신 인터페이스뿐만 아니라 matplotlib에 대한 약간의 OO 인터페이스를 배워야합니다. 거의 모든 plt.*
기능은 기본적으로 수행되는 얇은 래퍼입니다 gca().*
.
plt.subplot
axes
객체를 반환 합니다. 좌표축 객체에 대한 참조가 있으면 직접 플롯하고 한계를 변경할 수 있습니다.
import matplotlib.pyplot as plt
ax1 = plt.subplot(131)
ax1.scatter([1, 2], [3, 4])
ax1.set_xlim([0, 5])
ax1.set_ylim([0, 5])
ax2 = plt.subplot(132)
ax2.scatter([1, 2],[3, 4])
ax2.set_xlim([0, 5])
ax2.set_ylim([0, 5])
원하는만큼의 축에 대해서도 마찬가지입니다.
또는 더 나은 방법으로 루프로 마무리하십시오.
import matplotlib.pyplot as plt
DATA_x = ([1, 2],
[2, 3],
[3, 4])
DATA_y = DATA_x[::-1]
XLIMS = [[0, 10]] * 3
YLIMS = [[0, 10]] * 3
for j, (x, y, xlim, ylim) in enumerate(zip(DATA_x, DATA_y, XLIMS, YLIMS)):
ax = plt.subplot(1, 3, j + 1)
ax.scatter(x, y)
ax.set_xlim(xlim)
ax.set_ylim(ylim)
참고 URL : https://stackoverflow.com/questions/15858192/how-to-set-xlim-and-ylim-for-a-subplot-in-matplotlib
반응형
'Programing' 카테고리의 다른 글
ActiveRecord의 무작위 레코드 (0) | 2020.06.13 |
---|---|
반복되는 문자로 채워진 가변 길이의 문자열을 만듭니다. (0) | 2020.06.13 |
SQL Server 보안 주체 "dbo"가 없습니다. (0) | 2020.06.12 |
Java에서 두 필드를 기준으로 정렬하는 방법은 무엇입니까? (0) | 2020.06.12 |
문자열에서 모든 선행 0을 제거하는 방법 (0) | 2020.06.12 |