[PYTHON] matplotlib에서 y 축 한계 설정
PYTHONmatplotlib에서 y 축 한계 설정
matplotlib에서 y 축 한계를 설정하는 데 도움이 필요합니다. 다음은 시도한 코드입니다. 실패했습니다.
import matplotlib.pyplot as plt
plt.figure(1, figsize = (8.5,11))
plt.suptitle('plot title')
ax = []
aPlot = plt.subplot(321, axisbg = 'w', title = "Year 1")
ax.append(aPlot)
plt.plot(paramValues,plotDataPrice[0], color = '#340B8C',
marker = 'o', ms = 5, mfc = '#EB1717')
plt.xticks(paramValues)
plt.ylabel('Average Price')
plt.xlabel('Mark-up')
plt.grid(True)
plt.ylim((25,250))
이 플롯에 대한 데이터를 가지고 y 축 한계 값은 20과 200이됩니다. 그러나 한계 값 20과 250이 필요합니다.
해결법
-
==============================
1.이 시도 . 서브 플로트에서도 작동합니다.
이 시도 . 서브 플로트에서도 작동합니다.
axes = plt.gca() axes.set_xlim([xmin,xmax]) axes.set_ylim([ymin,ymax])
-
==============================
2.귀하의 코드도 나를 위해 작동합니다. 그러나 또 다른 해결 방법은 플롯의 축을 가져온 다음 y 값만 변경하는 것입니다.
귀하의 코드도 나를 위해 작동합니다. 그러나 또 다른 해결 방법은 플롯의 축을 가져온 다음 y 값만 변경하는 것입니다.
x1, x2, y1, y2 = plt.axis () plt.axis ((x1, x2, 25,250))
-
==============================
3.당신이 할 수있는 한 가지 방법은 matplotlib.pyplot.axis를 사용하여 직접 축 범위를 설정하는 것입니다.
당신이 할 수있는 한 가지 방법은 matplotlib.pyplot.axis를 사용하여 직접 축 범위를 설정하는 것입니다.
matplotlib.pyplot.axis
from matplotlib import pyplot as plt plt.axis([0, 10, 0, 20])
0,10은 x 축 범위입니다. 0,20은 y 축 범위입니다.
또는 matplotlib.pyplot.xlim 또는 matplotlib.pyplot.ylim을 사용할 수도 있습니다.
matplotlib.pyplot.ylim
plt.ylim(-2, 2) plt.xlim(0,10)
-
==============================
4.@ Hima의 답변에 추가하려면 현재 x 또는 y 제한을 수정하려면 다음을 사용할 수 있습니다.
@ Hima의 답변에 추가하려면 현재 x 또는 y 제한을 수정하려면 다음을 사용할 수 있습니다.
import numpy as np # you probably alredy do this so no extra overhead fig, axes = plt.subplot() axes.plot(data[:,0], data[:,1]) xlim = axes.get_xlim() # example of how to zoomout by a factor of 0.1 factor = 0.1 new_xlim = (xlim[0] + xlim[1])/2 + np.array((-0.5, 0.5)) * (xlim[1] - xlim[0]) * (1 + factor) axes.set_xlim(new_xlim)
이 기능은 기본 플롯 설정에서 약간 축소하거나 축소하려는 경우에 특히 유용합니다.
-
==============================
5.이것은 효과가있다. Tamás와 Manoj Govindan처럼 코드가 저에게 효과적입니다. Matplotlib를 업데이트하려고 할 것 같습니다. 관리 권한이 충분하지 않은 경우와 같이 Matplotlib를 업데이트 할 수없는 경우 matplotlib.use ()로 다른 백엔드를 사용하면 도움이 될 수 있습니다.
이것은 효과가있다. Tamás와 Manoj Govindan처럼 코드가 저에게 효과적입니다. Matplotlib를 업데이트하려고 할 것 같습니다. 관리 권한이 충분하지 않은 경우와 같이 Matplotlib를 업데이트 할 수없는 경우 matplotlib.use ()로 다른 백엔드를 사용하면 도움이 될 수 있습니다.
-
==============================
6.이것은 적어도 matplotlib 2.2.2 버전에서 작동했습니다 :
이것은 적어도 matplotlib 2.2.2 버전에서 작동했습니다 :
plt.axis([None, None, 0, 100])
아마 이것은 xmin과 ymax 등을 설정하는 좋은 방법 일 것입니다.
-
==============================
7.질문에 표시된 코드 아래의 코드로 생성 된 축이 첫 번째 축과 범위를 공유하는 경우 해당 축의 마지막 플롯 이후에 범위를 설정해야합니다.
질문에 표시된 코드 아래의 코드로 생성 된 축이 첫 번째 축과 범위를 공유하는 경우 해당 축의 마지막 플롯 이후에 범위를 설정해야합니다.
from https://stackoverflow.com/questions/3777861/setting-y-axis-limit-in-matplotlib by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] Python 스크립트 예약 - Windows 7 (0) | 2018.10.09 |
---|---|
[PYTHON] seek () 함수는 무엇입니까? (0) | 2018.10.09 |
[PYTHON] SQLAlchemy : 실제 쿼리 인쇄 (0) | 2018.10.09 |
[PYTHON] 내 장고 요청에서 내 JSON 데이터는 어디에 있습니까? (0) | 2018.10.09 |
[PYTHON] matplotlib을 사용하여 두 개의 히스토그램을 동시에 플롯합니다. (0) | 2018.10.09 |