Matplotlib Labels, Title and Legend

ایجاد برچسب

جهت نوشتن برچسب (label) برای محورهای x و y به ترتیب از توابع xlabel() و ylabel() استفاده می‌کنیم.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

plt.plot(x, y)

plt.xlabel("Average Pulse")
plt.ylabel("Calorie Burnage")

plt.show()

خروجی:

ایجاد عنوان

می‌توانید به کمک تابع title() برای نمودار رسم شده یک عنوان (title) ایجاد کنید.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

plt.plot(x, y)

plt.title("Sports Watch Data")
plt.xlabel("Average Pulse")
plt.ylabel("Calorie Burnage")

plt.show()

خروجی:

ایجاد راهنما

برای ایجاد راهنما (legend) می‌توان از آرگومان label در تابع plot() استفاده کرد.

جهت نمایش راهنمای نمودار باید تابع legend() را فراخوانی کرد.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

plt.plot(x, y, label = 'Line 1')

plt.title("Sports Watch Data")
plt.xlabel("Average Pulse")
plt.ylabel("Calorie Burnage")

plt.legend()
plt.show()

خروجی:

تعیین نوع و خصوصیت‌های فونت برای برچسب‌ها و عنوان

در توابع ylabel() ،xlabel() و title() از پارامتر fontdict جهت تعیین خصوصیات و نوع فونت استفاده می‌کنیم.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

font1 = {'family':'serif','color':'blue','size':20}
font2 = {'family':'serif','color':'darkred','size':15}

plt.title("Sports Watch Data", fontdict = font1)
plt.xlabel("Average Pulse", fontdict = font2)
plt.ylabel("Calorie Burnage", fontdict = font2)

plt.plot(x, y)
plt.show()

خروجی:

تعیین نوع و خصوصیت‌های فونت برای راهنمای نمودار

تعیین نوع و خصوصیات فونت برای legend کمی متفاوت است. نوع، اندازه و استایل فونت را به صورت یک دیکشنری با استفاده از پارامتر prop به تابع legend() می‌دهیم. اما جهت تعیین رنگ متن و رنگ زمینه راهنمای نمودار به ترتیب از پارامترهای labelcolor و facecolor استفاده می‌کنیم.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

font1 = {'family':'serif','color':'blue','size':20}
font2 = {'family':'serif','color':'darkred','size':15}
font3 = {'family':'serif', 'style': 'normal','size':10}


plt.title("Sports Watch Data", fontdict = font1)
plt.xlabel("Average Pulse", fontdict = font2)
plt.ylabel("Calorie Burnage", fontdict = font2)

plt.plot(x, y, label = 'Line 1')
plt.legend(prop = font3, labelcolor = 'b', facecolor = 'y')
plt.show()

خروجی:

با استفاده از کلیدواژه 'linecolor' برای پارامتر labelcolor رنگ متن راهنمای نمودار همان رنگ نمودار رسم شده خواهد بود.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

font1 = {'family':'serif','color':'blue','size':20}
font2 = {'family':'serif','color':'darkred','size':15}
font3 = {'family':'serif', 'style': 'normal','size':10}


plt.title("Sports Watch Data", fontdict = font1)
plt.xlabel("Average Pulse", fontdict = font2)
plt.ylabel("Calorie Burnage", fontdict = font2)

plt.plot(x, y, label = 'Line 1')
plt.legend(prop = font3, labelcolor = 'linecolor')
plt.show()

خروجی:

تعیین محل عنوان

برای تعیین محل عنوان می‌توانید از پارامتر loc در تابع title() استفاده کنید.

مقادیر مجاز برای این پارامتر عبارتند از 'right' ،'left' و 'center که مقدار پیش‌فرض آن برابر 'center' است.


import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

plt.title("Sports Watch Data", loc = 'left')
plt.xlabel("Average Pulse")
plt.ylabel("Calorie Burnage")

plt.plot(x, y)
plt.show()

خروجی:

تعیین محل راهنمای نمودار

برای تعیین محل راهنمای نمودار می‌توانید از پارامتر loc در تابع legend() استفاده کنید.

مقادیر مجاز برای آن به قرار جدول زیر است که می‌توانید از عبارت مورد نظر یا عدد معادل آن استفاده کنید.

مقدار مجاز عدد معادل
'best' 0
'upper right' 1
'upper left' 2
'lower left' 3
'lower right' 4
'right' 5
'center left' 6
'center right' 7
'lower center' 8
'upper center' 9
'center' 10

import numpy as np
import matplotlib.pyplot as plt

x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])

plt.title("Sports Watch Data")
plt.xlabel("Average Pulse")
plt.ylabel("Calorie Burnage")

plt.plot(x, y, label = 'line 1')

plt.legend(loc = 'lower right')
plt.show()

خروجی: