از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
تغییر اندازه قلم در Matplotlib
سرفصلهای مطلب
معرفی
Matplotlib یکی از پرکاربردترین کتابخانه های تجسم داده در پایتون است. بیشتر محبوبیت Matplotlib از گزینه های سفارشی سازی آن ناشی می شود – می توانید تقریباً هر عنصری را از آن تغییر دهید. سلسله مراتب اشیاء.
در این آموزش، روش انجام این کار را بررسی خواهیم کرد اندازه فونت را در Matplotlib تغییر دهید.
تغییر اندازه قلم در Matplotlib
چند راه برای تغییر اندازه فونت ها در Matplotlib وجود دارد. می توانید تنظیم کنید fontsize
تغییر روش برخورد Matplotlib با فونت ها به طور کلی یا حتی تغییر اندازه شکل.
بیایید ابتدا یک نمودار ساده ایجاد کنیم که می خواهیم اندازه فونت ها را تغییر دهیم روی:
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots(figsize=(12, 6))
x = np.arange(0, 10, 0.1)
y = np.sin(x)
z = np.cos(x)
ax.plot(y, color='blue', label='Sine wave')
ax.plot(z, color='black', label='Cosine wave')
ax.set_title('Sine and cosine waves')
ax.set_xlabel('Time')
ax.set_ylabel('Intensity')
leg = ax.legend()
plt.show()
تغییر اندازه قلم با استفاده از اندازه فونت
بیایید ساده ترین گزینه را امتحان کنیم. هر تابعی که با متن سروکار دارد، مانند Title
، برچسب ها و سایر توابع متنی یک آرگومان را می پذیرند – fontsize
.
بیایید دوباره کد قبلی را بررسی کنیم و a را مشخص کنیم fontsize
برای این عناصر:
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots(figsize=(12, 6))
x = np.arange(0, 10, 0.1)
y = np.sin(x)
z = np.cos(x)
ax.plot(y, color='blue', label='Sine wave')
ax.plot(z, color='black', label='Cosine wave')
ax.set_title('Sine and cosine waves', fontsize=20)
ax.set_xlabel('Time', fontsize=16)
ax.set_ylabel('Intensity', fontsize=16)
leg = ax.legend()
plt.show()
در اینجا، ما را تنظیم کرده ایم fontsize
برای عنوان و همچنین برچسب ها برای زمان و شدت. با اجرای این کد به دست می آید:
همچنین میتوانیم اندازه فونت را با افزودن عبارت تغییر دهیم prop
آرگومان و تنظیم اندازه فونت در آنجا:
leg = ax.legend(prop={"size":16})
با این کار اندازه فونت تغییر میکند، که در این حالت افسانه را نیز به سمت چپ پایین منتقل میکند تا با عناصر همپوشانی نداشته باشد. روی بالا سمت راست:
با این حال، در حالی که میتوانیم هر اندازه فونت را به این صورت تنظیم کنیم، اگر عناصر متنی زیادی داشته باشیم و فقط اندازه یکنواخت و کلی بخواهیم – این رویکرد تکراری است.
در چنین مواردی می توانیم به تنظیم اندازه فونت روی بیاوریم در سطح جهانی.
تغییر اندازه قلم به صورت جهانی
دو روش وجود دارد که می توانیم اندازه فونت را به صورت جهانی تنظیم کنیم. ما می خواهیم تنظیم کنیم font_size
پارامتر به اندازه جدید از طریق می توانیم به این پارامتر برسیم rcParams('font.size')
.
یک راه این است که آنها را مستقیماً اصلاح کنید:
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots(figsize=(12, 6))
x = np.arange(0, 10, 0.1)
y = np.sin(x)
z = np.cos(x)
plt.rcParams('font.size') = '16'
ax.plot(y, color='blue', label='Sine wave')
ax.plot(z, color='black', label='Cosine wave')
plt.xlabel('Time')
plt.ylabel('Intensity')
fig.suptitle('Sine and cosine waves')
leg = ax.legend()
plt.show()
شما باید اینها را تنظیم کنید قبل از را plot()
فراخوانی تابع، زیرا اگر بعداً آنها را اعمال کنید، هیچ تغییری ایجاد نخواهد شد. این رویکرد هر چیزی را که به عنوان یک فونت مشخص شده است را تغییر می دهد font
شی کوارگز
با این حال، هنگامی که ما این کد را اجرا می کنیم، واضح است که تیک های x و y و همچنین برچسب های x و y در اندازه تغییر نکرده اند:
بسته به روی نسخه Matplotlib که در حال اجرا هستید، نمی توانید این موارد را با پارامترهای rc تغییر دهید. شما استفاده می کنید axes.labelsize
و xtick.labelsize
/ytick.labelsize
به ترتیب برای آنها
اگر تنظیم اینها اندازه برچسب ها را تغییر نمی دهد، می توانید از آن استفاده کنید set()
تابع عبور در a fontsize
یا استفاده کنید set_fontsize()
تابع:
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots(figsize=(12, 6))
x = np.arange(0, 10, 0.1)
y = np.sin(x)
z = np.cos(x)
plt.rcParams('font.size') = '16'
for label in (ax.get_xticklabels() + ax.get_yticklabels()):
label.set_fontsize(16)
ax.plot(y, color='blue', label='Sine wave')
ax.plot(z, color='black', label='Cosine wave')
plt.xlabel('Time', fontsize=16)
plt.ylabel('Intensity', fontsize=16)
fig.suptitle('Sine and cosine waves')
leg = ax.legend()
plt.show()
این نتیجه در:
نتیجه
در این آموزش، ما چندین روش را برای تغییر اندازه فونت ها در Matplotlib بررسی کرده ایم.
اگر به تجسم دادهها علاقه دارید و نمیدانید از کجا شروع کنید، حتماً ما را بررسی کنید بسته کتاب روی تجسم داده ها در پایتون:
تجسم داده ها در پایتون با Matplotlib و Pandas کتابی است که طراحی شده است تا مبتدیان مطلق را با دانش پایه پایتون به Pandas و Matplotlib ببرد و به آنها اجازه دهد پایه ای قوی برای کار پیشرفته با این کتابخانه ها بسازند – از طرح های ساده گرفته تا طرح های سه بعدی متحرک با دکمه های تعاملی.
این به عنوان یک راهنمای عمیق عمل می کند که همه چیزهایی را که باید در مورد پانداها و Matplotlib بدانید، از جمله روش ساخت انواع طرح هایی که در خود کتابخانه تعبیه نشده اند را به شما آموزش می دهد.
تجسم داده ها در پایتون، کتابی برای توسعه دهندگان پایتون مبتدی تا متوسط، شما را در دستکاری ساده داده ها با پانداها راهنمایی می کند، کتابخانه های ترسیم هسته ای مانند Matplotlib و Seaborn را پوشش می دهد و به شما نشان می دهد که چگونه از کتابخانه های اعلامی و تجربی مانند Altair استفاده کنید. به طور خاص، در طول ۱۱ فصل، این کتاب ۹ کتابخانه پایتون را پوشش میدهد: Pandas، Matplotlib، Seaborn، Bokeh، Altair، Plotly، GGPlot، GeoPandas و VisPy.
این به عنوان یک راهنمای عملی و منحصر به فرد برای تجسم داده ها، در مجموعه ای از ابزارهایی که ممکن است در حرفه خود استفاده کنید، عمل می کند.
(برچسبها به ترجمه)# python
منتشر شده در 1403-01-15 17:34:04