[Data Viz] More tips

hyunsooo·2022년 10월 10일
0

Matplotlib tips

  • fig.set_facecolor('gray') : 배경색상 설정

  • fig.add_subplot(121), plt.subplots(1, 2) : 서브플롯 추가

  • fig.add_subplot(sharex=True/Flase), plt.subplots(sharey=True/False) : x축과 y축 값 공유

  • dpi파라미터는 해상도 설정이며 기본 100의 값으로 설정되어 있다.

  • subplots로 생성하면 ndarray형식으로 반환하기 때문에 이중 반복을 피하기 위해 flatten을 적절히 사용해주면 좋다.

  • 파라미터 aspect : x축에 대한 y축의 비율을 지정할 수 있다.

  • fig.add_gridspec(size) : 원하는 grid를 나누고 슬라이싱을 통해 차트를 그릴 수 있다.

  • ax.inset_axes([x, y, x_delta, y_delta]) : 미니맵과 같은 작은 서브플롯을 그릴 때 사용

  • ax.grid() : 격자 표시

    • which : major ticks, minor ticks ('minor', 'major', 'both'로 조정하며 set_ticks(minor=True)로 minor를 표시할 수 있다.)
    • axis : x, y, both (둘다 표시)
    • linestyle
    • linewidth
    • zorder
    • matplot에는 기본적인 .grid()만 제공하기 때문에 격자모양을 곡선과 같이 다양한 모양을 나타낼 때는 .plot()으로 다양한 파라미터와 함께 그려준다.
  • ax.axvline(), ax.axhline() : 직교좌표계의 평행선 위치에 대한 설정

    • ax의 전체를 0부터 1로 삼아 ax.axvline(ymin=0.3, ymax=0.7)과 같이 비율로 특정 영역에 표시할 수 있다.
  • ax.axvspan(), ax.hspan() : 특정 부분의 면적을 표시

  • ax.spines

    • ax.spines['position'].set_visible() : 특정 변을 삭제

    • ax.spines['position'].set_linewidth() : 특정 변의 두께 조정

    • ax.spines['left'].set_position('center') : 특정 변의 위치 이동(top, right를 삭제후 left(y), bottom(x)를 center로 이동시켜 많이 사용한다.)

    • 축은 center말고도 아래와 같이 지정할 수 있다.

    • 'center' -> ('axes', 0.5)

    • 'zero' -> ('data', 0.0)

Settings

  • plt.rcParams['setting key']를 통해 설정 변경이 가능하다.

  • plt.rc('setting key'= value, ...)로도 변경할 수 있다.

  • plt.rcParams.update(plt.rcParamsDefault) : default로 되돌리기

  • print(mpl.style.available) : 사용가능한 테마 보기

  • mpl.style.use('seaborn') : 특정 테마로 변경하기

profile
지식 공유

0개의 댓글