Matplotlib에서 그림 제목 및 축 레이블 글꼴 크기를 설정하려면 어떻게 해야 합니까?
Matplotlib에서 다음과 같이 도형을 만듭니다.
from matplotlib import pyplot as plt
fig = plt.figure()
plt.plot(data)
fig.suptitle('test title')
plt.xlabel('xlabel')
plt.ylabel('ylabel')
fig.savefig('test.jpg')
그림 제목과 축 레이블의 글꼴 크기를 지정합니다. 세 하기 글꼴 크기 크기)를 설정합니다.mpl.rcParams['font.size']=x
것이 는 제가 원하는 것이 아닙니다.그림 제목과 축 레이블의 글꼴 크기를 개별적으로 설정하려면 어떻게 해야 합니까?
음음음음 like like like like like like 와 같은 텍스트를 다루는 label
,title
, 등. 와 같은 파라미터를 받아들입니다.사용할 수 있는 글꼴크기에 대해서size/fontsize
:
from matplotlib import pyplot as plt
fig = plt.figure()
plt.plot(data)
fig.suptitle('test title', fontsize=20)
plt.xlabel('xlabel', fontsize=18)
plt.ylabel('ylabel', fontsize=16)
fig.savefig('test.jpg')
title
★★★★★★★★★★★★★★★★★」label
크기, 포함axes.titlesize
★★★★★★★★★★★★★★★★★」axes.labelsize
( (웃음)
axes.titlesize : large # fontsize of the axes title
axes.labelsize : medium # fontsize of the x any y labels
설정할 .x
★★★★★★★★★★★★★★★★★」y
라벨의 사이즈는 별도입니다.)
보면 '아주 좋다'라는 말이 나오네요.axes.titlesize
을 미치지 않다suptitle
수동으로 설정하셔야 할 것 같아요
rcParams 딕셔너리를 사용하여 이를 글로벌하게 수행할 수도 있습니다.
import matplotlib.pylab as pylab
params = {'legend.fontsize': 'x-large',
'figure.figsize': (15, 5),
'axes.labelsize': 'x-large',
'axes.titlesize':'x-large',
'xtick.labelsize':'x-large',
'ytick.labelsize':'x-large'}
pylab.rcParams.update(params)
ax
에는 '그림'이 수 .ax.xaxis.label.set_size()
ipython terminal.ipython 수 있습니다.효과를 보려면 그 후 다시 그리기 작업이 필요할 것 같습니다.예를 들어 다음과 같습니다.
import matplotlib.pyplot as plt
# set up a plot with dummy data
fig, ax = plt.subplots()
x = [0, 1, 2]
y = [0, 3, 9]
ax.plot(x,y)
# title and labels, setting initial sizes
fig.suptitle('test title', fontsize=12)
ax.set_xlabel('xlabel', fontsize=10)
ax.set_ylabel('ylabel', fontsize='medium') # relative to plt.rcParams['font.size']
# setting label sizes after creation
ax.xaxis.label.set_size(20)
plt.draw()
작성 후 suptitle 크기를 설정하는 비슷한 방법은 모릅니다.
제목의 글꼴만 수정하려면(축의 글꼴은 수정하지 않음)저는 이걸 썼어요
import matplotlib.pyplot as plt
fig = plt.Figure()
ax = fig.add_subplot(111)
ax.set_title('My Title', fontdict={'fontsize': 8, 'fontweight': 'medium'})
fontdict는 matplotlib.text의 모든 kwargs를 받아들입니다.문자.
" " 를 사용하여 글꼴 합니다.rcParams
을 끝내야 한다
import matplotlib.pyplot as plt
plt.rcParams['axes.labelsize'] = 16
plt.rcParams['axes.titlesize'] = 16
# or
params = {'axes.labelsize': 16,
'axes.titlesize': 16}
plt.rcParams.update(params)
# or
import matplotlib as mpl
mpl.rc('axes', labelsize=16, titlesize=16)
# or
axes = {'labelsize': 16,
'titlesize': 16}
mpl.rc('axes', **axes)
다음 명령을 사용하여 기본값을 복원할 수 있습니다.
plt.rcParams.update(plt.rcParamsDefault)
스타일시트를 작성함으로써 이 작업을 수행할 수도 있습니다.stylelib
matplotlib 컨피규레이션디렉토리에 있는 디렉토리(컨피규레이션디렉토리를 입수할 수 있습니다).matplotlib.get_configdir()
스타일시트 포맷은 다음과 같습니다.
axes.labelsize: 16
axes.titlesize: 16
가 있는 경우/path/to/mpl_configdir/stylelib/mystyle.mplstyle
다음 ''를 통해서도 쓸 수 있어요.
plt.style.use('mystyle')
# or, for a single section
with plt.style.context('mystyle'):
# ...
형식을 공유하는 matplotlibrc 파일을 생성(또는 수정)할 수도 있습니다.
axes.labelsize = 16
axes.titlesize = 16
이러한 변경은 현재 작업 디렉토리, matplotlibrc 파일이 없는 모든 작업 디렉토리 또는 matplotlibrc 파일이 없는 다른 matplotlibrc 파일이 지정되지 않은 모든 작업 디렉토리에만 사용됩니다.자세한 내용은 matplotlib 커스터마이징 페이지의 이 섹션을 참조하십시오.
의 전체 목록rcParams
키를 취득할 수 있습니다.plt.rcParams.keys()
단, 폰트 크기 조정에 대해서는 (이탈릭은 여기서 인용)
axes.labelsize
- x 및 y 라벨의 글꼴 크기axes.titlesize
- 축 제목 글꼴 크기figure.titlesize
- 그림Figure.suptitle()
제목 크기()xtick.labelsize
- 눈금 레이블 글꼴 크기ytick.labelsize
- 눈금 레이블 글꼴 크기legend.fontsize
- 범례 글꼴 크기(plt.legend()
,fig.legend()
)legend.title_fontsize
- 범례 제목 글꼴 크기, 기본 축과 동일하게 설정합니다.사용 예에 대해서는, 다음의 회답을 참조해 주세요.
모두 문자열 크기를 수용합니다.{'xx-small', 'x-small', 'smaller', 'small', 'medium', 'large', 'larger', 'x-large', 'xxlarge'}
또는float
에pt
. 문자열 사이즈는 에 의해 지정된 기본 글꼴사이즈에 상대적으로 정의됩니다.
font.size
- 텍스트의 기본 글꼴 크기(ppts). 10ppt가 표준값입니다.
또한 가중치는 다음과 같이 지정할 수 있습니다(단, 표시되는 기본값에 한함).
font.weight
- 에서 사용되는 글꼴의 기본 무게text.Text
받아들이다{100, 200, 300, 400, 500, 600, 700, 800, 900}
또는'normal'
(400),'bold'
(700),'lighter'
,그리고.'bolder'
(현재 무게에 따라 달라짐).
그림 및 축 개체를 명시적으로 작성하지 않는 경우, 다음을 사용하여 제목을 작성할 때 제목 글꼴 크기를 설정할 수 있습니다.fontdict
★★★★★★ 。
와 y의 설정할 수또, 은, x와 y의 라벨이 각각 .fontsize
★★★★★★ 。
예를 들어 다음과 같습니다.
plt.title('Car Prices are Increasing', fontdict={'fontsize':20})
plt.xlabel('Year', fontsize=18)
plt.ylabel('Price', fontsize=16)
시보른과 판다의 플롯(Matplotlib이 백엔드일 경우)에도 대응!
타이틀 사이즈 변경 방법에 대한 답변도 있습니다만, 축의 체크 라벨 사이즈에 대해서는 set_tick_params 메서드를 사용할 수도 있습니다.
예: x축 눈금 레이블 크기를 줄이려면:
ax.xaxis.set_tick_params(labelsize='small')
또는 Y축 눈금 레이블을 크게 하려면:
ax.yaxis.set_tick_params(labelsize='large')
'다, 하다, 하다'를 입력할 도 있습니다.labelsize
'xx-small', 'x-small', 'small', 'medium', 'large', 'xx-large', 'xx-large' 이렇게 말합니다.
글꼴 크기를 변경하는 다른 방법은 패딩을 변경하는 것입니다.Python이 PNG를 저장할 때 열려 있는 대화 상자를 사용하여 레이아웃을 변경할 수 있습니다.이 단계에서 축 사이의 간격, 필요에 따라 패딩을 변경할 수 있습니다.
★★★right_ax
전에set_ylabel()
ax.right_ax.set_ylabel('AB scale')
라이브러리
numpy를 np로 Import하다
import matplotlib.PLT로서의 pyplot
데이터 세트 생성
높이 = [3, 12, 5, 18, 45]
막대 =('A', 'B', 'C', 'D', 'E')
x_pos = np.arange(len(bars))
막대를 만들고 색상을 선택합니다.
plt.bar (x_pos, 높이, 색상 = (0.5,0.1,0.5,0.6)
제목 및 축 이름 추가
plt.title('내 직함')
plt.xlabel (카테고리)
plt.ylabel(values')
x축에 이름 만들기
plt.xticks(x_pos, 바)
플롯 표시
plt.show()
7 (최적의 솔루션)
from numpy import*
import matplotlib.pyplot as plt
X = linspace(-pi, pi, 1000)
class Crtaj:
def nacrtaj(self,x,y):
self.x=x
self.y=y
return plt.plot (x,y,"om")
def oznaci(self):
return plt.xlabel("x-os"), plt.ylabel("y-os"), plt.grid(b=True)
6(더 나쁜 솔루션)
from numpy import*
M = array([[3,2,3],[1,2,6]])
class AriSred(object):
def __init__(self,m):
self.m=m
def srednja(self):
redovi = len(M)
stupci = len (M[0])
lista=[]
a=0
suma=0
while a<stupci:
for i in range (0,redovi):
suma=suma+ M[i,a]
lista.append(suma)
a=a+1
suma=0
b=array(lista)
b=b/redovi
return b
OBJ = AriSred(M)
sr = OBJ.srednja()
언급URL : https://stackoverflow.com/questions/12444716/how-do-i-set-the-figure-title-and-axes-labels-font-size-in-matplotlib
'programing' 카테고리의 다른 글
원격 서버에서 Amazon EC2의 mysql에 연결 (0) | 2022.10.21 |
---|---|
Java Mail을 사용하여 첨부 파일 다운로드 (0) | 2022.10.21 |
마리아답:내 쿼리에서 인덱스를 사용하지 않는 이유는 무엇입니까? (0) | 2022.10.21 |
PHP - 개체 배열에서 속성 추출 (0) | 2022.10.21 |
Java 동기 스태틱메서드: 객체 또는 클래스에 대한 잠금 (0) | 2022.10.21 |