programing

Matplotlib에서 그림 제목 및 축 레이블 글꼴 크기를 설정하려면 어떻게 해야 합니까?

projobs 2022. 10. 21. 21:55
반응형

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를 받아들입니다.문자.

공식 가이드에 따르면pylab을 사용하다 matplotlib.pyplot대신 직접 사용해야 합니다.

" " 를 사용하여 글꼴 합니다.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)

스타일시트를 작성함으로써 이 작업을 수행할 수도 있습니다.stylelibmatplotlib 컨피규레이션디렉토리에 있는 디렉토리(컨피규레이션디렉토리를 입수할 수 있습니다).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'}또는floatpt. 문자열 사이즈는 에 의해 지정된 기본 글꼴사이즈에 상대적으로 정의됩니다.

  • 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

반응형