matplotlib 레이아웃 조정

matplotlib의 레이아웃을 조정했기 때문에 메모



레이아웃 조정


plt.rcParams["調整したいパラメータ"] = (値) 에서 기본 설정을 재정의할 수 있습니다.

import


import numpy as np
import matplotlib.pyplot as plt

그림의 큰 프레임에 대한 설정


plt.rcParams["figure.figsize"] = [6.4,4.0]  # 図の縦横のサイズ([横(inch),縦(inch)])
plt.rcParams["figure.dpi"] = 150            # dpi(dots per inch)
plt.rcParams["figure.autolayout"] = False   # レイアウトの自動調整を利用するかどうか
plt.rcParams["figure.subplot.left"] = 0.14  # 余白
plt.rcParams["figure.subplot.bottom"] = 0.14# 余白
plt.rcParams["figure.subplot.right"] =0.90  # 余白
plt.rcParams["figure.subplot.top"] = 0.91   # 余白
plt.rcParams["figure.subplot.wspace"] = 0.20# 図が複数枚ある時の左右との余白
plt.rcParams["figure.subplot.hspace"] = 0.20# 図が複数枚ある時の上下との余白

글꼴 설정


plt.rcParams["font.family"] = "serif"       # 使用するフォント
plt.rcParams["font.serif"] = "Times New Roman"
plt.rcParams["font.size"] = 14              # 基本となるフォントの大きさ
plt.rcParams["mathtext.cal"] = "serif"      # TeX表記に関するフォント設定
plt.rcParams["mathtext.rm"] = "serif"       # TeX表記に関するフォント設定
plt.rcParams["mathtext.it"] = "serif:italic"# TeX表記に関するフォント設定
plt.rcParams["mathtext.bf"] = "serif:bold"  # TeX表記に関するフォント設定
plt.rcParams["mathtext.fontset"] = "cm"     # TeX表記に関するフォント設定

TeX에 관한 설정 항목을 잘 모르겠지만 뭐 움직이고 있으니까 요시!

메모리 라인 설정


plt.rcParams["xtick.direction"] = "in"      # 目盛り線の向き、内側"in"か外側"out"かその両方"inout"か
plt.rcParams["ytick.direction"] = "in"      # 目盛り線の向き、内側"in"か外側"out"かその両方"inout"か
plt.rcParams["xtick.top"] = True            # 上部に目盛り線を描くかどうか
plt.rcParams["xtick.bottom"] = True         # 下部に目盛り線を描くかどうか
plt.rcParams["ytick.left"] = True           # 左部に目盛り線を描くかどうか
plt.rcParams["ytick.right"] = True          # 右部に目盛り線を描くかどうか
plt.rcParams["xtick.major.size"] = 4.0      # x軸主目盛り線の長さ
plt.rcParams["ytick.major.size"] = 4.0      # y軸主目盛り線の長さ
plt.rcParams["xtick.major.width"] = 1.0     # x軸主目盛り線の線幅
plt.rcParams["ytick.major.width"] = 1.0     # y軸主目盛り線の線幅
plt.rcParams["xtick.minor.visible"] = False # x軸副目盛り線を描くかどうか
plt.rcParams["ytick.minor.visible"] = False # y軸副目盛り線を描くかどうか
plt.rcParams["xtick.minor.size"] = 2.0      # x軸副目盛り線の長さ
plt.rcParams["ytick.minor.size"] = 2.0      # y軸副目盛り線の長さ
plt.rcParams["xtick.minor.width"] = 0.6     # x軸副目盛り線の線幅
plt.rcParams["ytick.minor.width"] = 0.6     # y軸副目盛り線の線幅
plt.rcParams["xtick.labelsize"] = 14        # 目盛りのフォントサイズ
plt.rcParams["ytick.labelsize"] = 14        # 目盛りのフォントサイズ

축 관련 설정


plt.rcParams["axes.labelsize"] = 18         # 軸ラベルのフォントサイズ
plt.rcParams["axes.linewidth"] = 1.0        # グラフ囲う線の太さ
plt.rcParams["axes.grid"] = True            # グリッドを表示するかどうか

그리드 관련 설정


plt.rcParams["grid.color"] = "black"        # グリッドの色
plt.rcParams["grid.linewidth"] = 1.0        # グリッドの線幅

범례에 관한 설정


plt.rcParams["legend.loc"] = "best"         # 凡例の位置、"best"でいい感じのところ
plt.rcParams["legend.frameon"] = True       # 凡例を囲うかどうか、Trueで囲う、Falseで囲わない
plt.rcParams["legend.framealpha"] = 1.0     # 透過度、0.0から1.0の値を入れる
plt.rcParams["legend.facecolor"] = "white"  # 背景色
plt.rcParams["legend.edgecolor"] = "black"  # 囲いの色
plt.rcParams["legend.fancybox"] = False     # Trueにすると囲いの四隅が丸くなる

막상 그리기


## データの用意
x = np.arange(-3, 3.1, 0.1)                 # -3から3まで0.1刻みのnumpy配列の作成
y1 = np.sin(x)
y2 = np.cos(x)

fig = plt.figure(1)
ax1 = fig.add_subplot(111)                  # 一行一列一個目
ax1.plot(x,y1,label = "$\sin\\theta$")      # 描画データの追加
ax1.plot(x,y2,label = "$\cos\\theta$")      # 描画データの追加

ax1.set_xlim(-3,3)                          # 表示範囲の設定
ax1.set_ylim(-1.5,1.5)                      # 表示範囲の設定
ax1.set_xlabel(r"$x$ [ - ]")                # 軸ラベルの設定
ax1.set_ylabel(r"$y$ [ - ]")                # 軸ラベルの設定
ax1.legend()                                # 凡例の追加

plt.show()                                  # 表示

실행 결과





상당히 좋은 느낌이었던 것은?

참고로 한 사이트


  • 공식 문서
  • Customizing matplotlib

  • 기타 사이트
  • [Python] matplotlib : 논문용으로 그림의 체재를 정돈한다

  • 좋은 웹페이지 즐겨찾기