Matplotlib 튜토리얼-플롯에 텍스트 배치

Jinku Hu 2023년1월30일
  1. Matplotlib 도끼 Text
  2. Matplotlib 축Text 기본 예
  3. Matplotlib 축Text 회전
  4. Matplotlib 축Text 회전 각도 설명
Matplotlib 튜토리얼-플롯에 텍스트 배치

이 튜토리얼에서 줄거리에 텍스트를 배치하는 방법에 대해 배웁니다. 텍스트를 추가하고 해당 텍스트에 좌표 위치를 지정하거나 특정 플롯에 텍스트를 추가하고 해당 플롯을 직접 가리키는 화살표를 그릴 수도 있습니다.

Matplotlib 도끼 Text

matplotlib.axes.Axes.text(x, y, s, fontdict=None, withdash=False, **kwargs)

데이터 좌표에서(x, y)위치의 축에 s 텍스트를 추가합니다.

** 매개 변수 **

이름 데이터 형식 기술
x, y 스칼라 텍스트를 배치 할 위치
s str 주석 텍스트
fontdict 사전 기본 텍스트 글꼴 속성을 재정의하는 사전

Matplotlib 축Text 기본 예

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 4 * np.pi, 1000)
y = 10 * np.sin(x)

fig, ax = plt.subplots(1, figsize=(6, 4.5))
ax.plot(x, y, "r")
ax.text(2.0, 9.5, "Peak Value", fontsize=14)

ax.grid(True)

plt.show()

Matplotlib 텍스트

Matplotlib 축Text 회전

text 에는 플롯에서 텍스트 회전 각도를 지정하는 키워드 인수- rotation 이 있습니다. ‘회전’각도는 0에서 360 (도) 사이입니다.

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 4 * np.pi, 1000)
y = 10 * np.sin(x)

fig, ax = plt.subplots(1, figsize=(6, 4.5))
ax.plot(x, y, "r")
ax.text(1.3, 9.0, "Peak Value", fontsize=16, rotation=270)

ax.grid(True)

plt.show()

Matplotlib Text_Rotation

Matplotlib 축Text 회전 각도 설명

회전 각도는 시계 반대 방향입니다. 우리는 회전 각도 정의를 설명하기 위해 데모 스크립트를 만듭니다.

import matplotlib.pyplot as plt
import numpy as np


def addtext(ax, props):
    for x in range(8):
        angle = 45 * x
        ax.text(0.5 + x, 0.5, "{} degree".format(angle), props, rotation=angle)
        ax.scatter(x + 0.5, 0.5, color="r")

    ax.set_yticks([0, 0.5, 1])
    ax.set_xlim(0, 8)
    ax.grid(True)


# the text bounding box
bbox = {"fc": "0.8", "pad": 0}

fig, axs = plt.subplots(1, 1, figsize=(8, 3))

addtext(axs, {"ha": "center", "va": "center", "bbox": bbox})
axs.set_xticks(np.arange(0, 8.1, 0.5), [])
axs.set_ylabel("center / center")

plt.show()

Matplotlib Text_Rotation 각도 데모

텍스트는 텍스트 사각형을 둘러싸는 사각형 상자 인 경계 상자에 따라 정렬됩니다. 텍스트가 먼저 회전 된 다음 정렬됩니다. 기본적으로 텍스트는(x, y)위치에 중심을두고이 지점을 중심으로 회전 한 다음 회전 된 텍스트의 경계 상자에 따라 정렬됩니다.

따라서 왼쪽, 아래쪽 정렬을 지정하면 회전 된 텍스트의 경계 상자 왼쪽 아래가 텍스트의(x, y)좌표에있게됩니다.

작가: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook