چطور با #Python و matplotlib یک نمودار حاشیهنویسیشده بسازیم 🐍📊
توضیح مرحله به مرحله
۱. ایمپورت کتابخونهها
matplotlib.pyplot برای رسم نمودار و numpy برای محاسبات عددی (مثل تابع exp) لازمه.
۲. ساخت شکل و رسم داده
یک شکل با اندازهی ۸×۶ ساخته میشه و تابع نمایی e^x روی بازهی ۰ تا ۹ رسم میشه.
۳. عنوان و برچسب محورها
۴. حاشیهنویسیها با plt.annotate()
تابع annotate() سه پارامتر کلیدی داره:
پارامتر
کارش
text
متنی که میخوای نشون بدی
xy
نقطهای که فلش بهش اشاره میکنه
xytext
موقعیت متن روی نمودار
arrowprops
استایل فلش
Point 1 — فلش ساده:
فقط یه فلش معمولی از متن به نقطه.
Point 2 — فلش منحنی:
با connectionstyle='arc3,rad=-.2' فلش به صورت کمان با انحنای -0.2 رسم میشه (منفی یعنی انحنا به یه سمت خاص).
Point 3 — فلش با زاویهی سفارشی:
اینجا connectionstyle='angle' با angleA=90 و angleB=0 یه فلش زاویهدار میسازه. سر فلش هم -|> یعنی پیکان کلاسیک با خط صاف.
💡 نکته: کلید اصلی plt.annotate() همینه: با xytext متن رو هر جا که دلت بخواد بذار، و با xy مشخص کن فلش به کدوم نقطهی واقعی روی نمودار اشاره کنه.
🆔 @python4all_pro
🧩لینک کانال در بله 👇👇
https://ble.ir/Python4all_pro
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure(figsize=(8, 6))
X = list(range(10))
plt.plot(X, np.exp(X))
plt.title('Annotating Exponential Plot using plt.annotate()')
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.annotate('Point 1', xy=(6, 400),
arrowprops=dict(arrowstyle='->'),
xytext=(4, 600))
plt.annotate('Point 2', xy=(7, 1150),
arrowprops=dict(arrowstyle='->',
connectionstyle='arc3,rad=-.2'),
xytext=(4.5, 2000))
plt.annotate('Point 3', xy=(8, 3000),
arrowprops=dict(arrowstyle='-|>',
connectionstyle='angle,angleA=90,angleB=0'),
xytext=(8.5, 2200))
plt.show()
توضیح مرحله به مرحله
۱. ایمپورت کتابخونهها
import matplotlib.pyplot as plt
import numpy as np
matplotlib.pyplot برای رسم نمودار و numpy برای محاسبات عددی (مثل تابع exp) لازمه.
۲. ساخت شکل و رسم داده
fig = plt.figure(figsize=(8, 6))
X = list(range(10))
plt.plot(X, np.exp(X))
یک شکل با اندازهی ۸×۶ ساخته میشه و تابع نمایی e^x روی بازهی ۰ تا ۹ رسم میشه.
۳. عنوان و برچسب محورها
plt.title('Annotating Exponential Plot using plt.annotate()')
plt.xlabel('x-axis')
plt.ylabel('y-axis')۴. حاشیهنویسیها با plt.annotate()
تابع annotate() سه پارامتر کلیدی داره:
پارامتر
کارش
text
متنی که میخوای نشون بدی
xy
نقطهای که فلش بهش اشاره میکنه
xytext
موقعیت متن روی نمودار
arrowprops
استایل فلش
Point 1 — فلش ساده:
plt.annotate('Point 1', xy=(6, 400),
arrowprops=dict(arrowstyle='->'),
xytext=(4, 600))فقط یه فلش معمولی از متن به نقطه.
Point 2 — فلش منحنی:
plt.annotate('Point 2', xy=(7, 1150),
arrowprops=dict(arrowstyle='->',
connectionstyle='arc3,rad=-.2'),
xytext=(4.5, 2000))با connectionstyle='arc3,rad=-.2' فلش به صورت کمان با انحنای -0.2 رسم میشه (منفی یعنی انحنا به یه سمت خاص).
Point 3 — فلش با زاویهی سفارشی:
plt.annotate('Point 3', xy=(8, 3000),
arrowprops=dict(arrowstyle='-|>',
connectionstyle='angle,angleA=90,angleB=0'),
xytext=(8.5, 2200))اینجا connectionstyle='angle' با angleA=90 و angleB=0 یه فلش زاویهدار میسازه. سر فلش هم -|> یعنی پیکان کلاسیک با خط صاف.
💡 نکته: کلید اصلی plt.annotate() همینه: با xytext متن رو هر جا که دلت بخواد بذار، و با xy مشخص کن فلش به کدوم نقطهی واقعی روی نمودار اشاره کنه.
🆔 @python4all_pro
🧩لینک کانال در بله 👇👇
https://ble.ir/Python4all_pro
❤1
Forwarded from Select Visa | سلکت ویزا
🇦🇺 مشاوره رایگان ویزای کاری استرالیا 🇦🇺
🔆 قبل از هر قدمی، مسیرت رو بشناس.
🔰مشاوران سلکت ویزا پرونده شما را بهصورت موردی و کاملاً اختصاصی بررسی میکنند تا بهترین مسیر مهاجرتی برای شرایط شما مشخص بشه.
✅ بررسی تخصصی شرایط شما
✅ راهنمایی دقیق برای مسیر درست
✅ کاملاً رایگان
📌 همین الان وقت مشاوره رزرو کن:
🔗 https://selectvisa.landin.ir/moshavere/
✅ مزیت اصلی این مشاوره برای متقاضیان تازه وارد این است که شناخت بهتری از مسیر مهاجرت پیدا میکنند و با دیدی بازتر، تصمیمات آگاهانهتری برای ادامه راه خود میگیرند.
🔆 قبل از هر قدمی، مسیرت رو بشناس.
🔰مشاوران سلکت ویزا پرونده شما را بهصورت موردی و کاملاً اختصاصی بررسی میکنند تا بهترین مسیر مهاجرتی برای شرایط شما مشخص بشه.
✅ بررسی تخصصی شرایط شما
✅ راهنمایی دقیق برای مسیر درست
✅ کاملاً رایگان
📌 همین الان وقت مشاوره رزرو کن:
🔗 https://selectvisa.landin.ir/moshavere/
✅ مزیت اصلی این مشاوره برای متقاضیان تازه وارد این است که شناخت بهتری از مسیر مهاجرت پیدا میکنند و با دیدی بازتر، تصمیمات آگاهانهتری برای ادامه راه خود میگیرند.