اذهب إلى المحتوى
  • 0

رسم بيانات عمودين من إطار بيانات dataframe في Matplotlib | Pandas | بايثون

Ali Ismael

السؤال

Recommended Posts

  • 1

يمكنك القيام برسمهما مباشرةً باستخدام Pandas من خلال الدالة plot كالتالي:

df.plot(x='col_name_1', y='col_name_2', style='o')

حيث أن الوسيط style يحدد شكل النقاط بالترتيب، أي أن النقط ستأخذ الشكل "o" أي دوائر. مثال:

import numpy as np
import pandas as pd
# إنشاء داتافريم مكون من عمودين
d = {'col_1' : np.arange(20),
     'col_2' : np.arange(20,40)}
df = pd.DataFrame(d)
# تمثيلهما  بيانياً
df.plot(x='col_1', y='col_2', style='o')

والخرج سيكون:
index.png.789eeaee3a8c7d75b3c34225bd19ec9b.png
كما يمكنك استخدام الدالة scatter في Matplotlib كما يلي (تجد رابطها في الأسفل لمزيد من التفاصيل):

import matplotlib.pyplot as plt
plt.scatter(df['col_1'], df['col_2'])
plt.show()

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

يمكنك رسم البيانات من dataframe عن طريق دالة plot والتي تسمح الرسم بأكثر من شكل وطريقة وكذلك تغيير الألوان وغيرها من الميزات، أنظر المثال التالي للتوضيح:

تخيل أن عندنا بيانات على الشكل التالي:

import pandas as pd

df = pd.DataFrame({
    'name':['ahmed','yousef','mohamed','mahmoud','yasser','lora','nadine'],
    'age':[23,78,22,19,45,33,20],
    'gender':['M','F','M','M','M','F','M'],
    'state':['cairo','alex','aswan','alex','cairo','morroco','morroco'],
    'num_children':[2,0,0,3,2,1,4],
    'num_pets':[5,1,0,5,2,2,3]
})

اذا قمنا بتنفيذ كود الرسم التالي:

import matplotlib.pyplot as plt
import pandas as pd

df.plot(kind='scatter',x='num_children',y='num_pets',color='red')
plt.show()

تظهر الرسمة التالية:

616ca02db1b0f_Figure2021-10-18001256.png.6fe5bf22e1ceba1548cdb07f51c9c699.png

كذلك يمكننا تغيير شكل الرسمة وأيضا رسم نقاط بجانب string كالتالي:

import matplotlib.pyplot as plt
import pandas as pd


df.plot(kind='bar',x='name',y='age')

616ca0697edc1_Figure2021-10-18001424.png.c7ba285c06a953717a02660e5f237666.png

أو رسم أكثر من دالة سويا هكذا:

ax = plt.gca()

df.plot(kind='line',x='name',y='num_children',ax=ax)
df.plot(kind='line',x='name',y='num_pets', color='red', ax=ax)

plt.show()

وتظهر هكذا:

616ca0b4c5ca0_Figure2021-10-18001611.png.9623eb8a66313483e4e74ab5e33bb130.png

ويمكنك تغيير شكل الرسومات وكذلك الألوان لأكثر من نوع اذا أردت

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...