Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

matplotlib에서 겹치는 오류 막대를 피하는 방법은 무엇입니까?

<시간/>

matplotlib에서 오차 막대가 겹치지 않도록 하기 위해 다음 단계를 수행할 수 있습니다. -

단계

  • Figure 크기를 설정하고 서브플롯 사이와 주변의 패딩을 조정합니다.

  • 이름 목록을 만드십시오.

  • y1 및 y2에 대한 데이터 요소와 오류 ye1, ye2를 가져옵니다.

  • Figure와 서브플롯 세트를 생성합니다.

  • 변경 가능한 2D 아핀 변환, trans1 생성 및 trans2 .

  • y 대 x를 오차 막대가 첨부된 선 및/또는 마커로 표시합니다.

  • 그림을 표시하려면 show()를 사용하세요. 방법.

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.transforms import Affine2D

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

x = ['Jack', 'James', 'Tom', 'Garry']

y1, y2 = np.random.randn(2, len(x))

ye1, ye2 = np.random.rand(2, len(x))*4+0.3

fig, ax = plt.subplots()

trans1 = Affine2D().translate(-0.1, 0.0) + ax.transData
trans2 = Affine2D().translate(0.1, 0.0) + ax.transData

er1 = ax.errorbar(x, y1, yerr=ye1, marker="*", linestyle="none", transform=trans1)
er2 = ax.errorbar(x, y2, yerr=ye2, marker="o", linestyle="none", transform=trans2)

plt.show()

출력

다음 출력을 생성합니다 -

matplotlib에서 겹치는 오류 막대를 피하는 방법은 무엇입니까?