Menu
CoddyTech
flag Ar iconالعربيةdown icon

عدة مخططات في مخطط واحد

جزء من قسم البيانات والرسوم البيانية في رحلة Machine Learning على Coddy. الدرس 28 من 60.

تتابع شاحنة طعام زبائنها ومدة انتظارهم. من الأفضل عرض الوحدات المختلفة في مخططين جنبًا إلى جنب ضمن شكل واحد:

مخططان جنبًا إلى جنب: أعمدة تمثل عدد الزبائن من الاثنين إلى الجمعة، وترتفع إلى 150 يوم الجمعة، وخط يمثل مدة الانتظار بالدقائق، ويرتفع إلى 12 دقيقة يوم الجمعة

أيام مزدحمة، وانتظار طويل: نظرة واحدة تروي القصة. ينشئ plt.subplots(1, 2) صفًا واحدًا يضم مخططين، حيث يكون axs[0] على اليسار وaxs[1] على اليمين:

days = ["Mon", "Tue", "Wed", "Thu", "Fri"]
customers = [60, 85, 70, 120, 150]
wait = [4, 6, 5, 9, 12]
fig, axs = plt.subplots(1, 2)
axs[0].bar(days, customers)
axs[0].set_title("Customers")
axs[1].plot(days, wait)
axs[1].set_title("Wait (min)")
plt.show()

كل واحد منها مخطط كامل بالأساليب التي تعرفها. تأتي الصفوف أولًا، مثل الشكل: plt.subplots(2, 1) يكدّسها.

challenge icon

التحدي

متوسط

سجّل أحد المتنزهين ثماني رحلات: المسافة المقطوعة بالكيلومترات km والوقت المستغرق hours. تُسمّي الدالة الابتدائية label(ax, title, xlabel, ylabel) مخططًا واحدًا. ارسم مخططين جنبًا إلى جنب:

  1. على اليسار: خط يبيّن km (عموديًا) لكل رقم رحلة في hikes (أفقيًا).
  2. على اليمين: نقطة واحدة لكل رحلة، المسافة أفقيًا والوقت عموديًا.
  3. سمِّ كل مخطط باستدعاء واحد للدالة label، مستخدمًا النصوص أدناه.

ينبغي أن يبدو مخططك مثل هذا، من سجل متنزه آخر:

مخططان جنبًا إلى جنب: على اليسار، خط بعنوان Distance per Hike، مع Hike أفقيًا وDistance (km) عموديًا؛ وعلى اليمين، نقاط بعنوان Time vs Distance، مع Distance (km) أفقيًا وTime (h) عموديًا

النصوص: Distance per Hike وHike وDistance (km) على اليسار؛ وTime vs Distance وDistance (km) وTime (h) على اليمين. لا يطبع برنامجك أي شيء.

جرّب بنفسك

import numpy as np
import matplotlib.pyplot as plt

hikes = np.arange(1, 9)
km = np.array([8.0, 12.5, 6.0, 15.0, 10.0, 18.5, 9.5, 14.0])
hours = np.array([2.5, 4.0, 2.0, 5.0, 3.5, 6.5, 3.0, 4.5])


# يُعيّن عنوانًا لأحد المخططات وتسميات لمحاوره (لا يُرجع شيئًا)
def label(ax, title, xlabel, ylabel):
    ax.set_title(title)
    ax.set_xlabel(xlabel)
    ax.set_ylabel(ylabel)


# اكتب شيفرتك أدناه

# لا تُغيّر السطر أدناه
plt.show()
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس البيانات والرسوم البيانية

تدرّب بنفسك: مترجم Python عبر الإنترنت