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

السؤال

نشر

لدي figure يحوي أكثر من subplots:

import matplotlib.pyplot as plt
import numpy as np
x = np.array([0, 1, 2, 3])
y = np.array([3, 8, 1, 10])
# plot1
plt.subplot(1, 2, 1)
plt.plot(x,y)
x = np.array([0, 1, 2, 3])
y = np.array([10, 20, 30, 40])
# plot2
plt.subplot(1, 2, 2)
plt.plot(x,y)
plt.show()

كيف يمكنني إضافة عنوان إلى كل من هذه ال subplots؟ جربت fig.suptitle لكنه يضيف عنوان إلى كامل الغراف لكنني أريد إضافة اسم لكل plot..
 

Recommended Posts

  • 0
نشر

هناك طريقتين الأولى هي استخدام title.set_text كالتالي:

import matplotlib.pyplot as plt
import numpy as np
x = np.array([0, 1, 2, 3])
y = np.array([3, 8, 1, 10])
f1=plt.subplot(1, 2, 1) #subplot قم بحفظ الكائن الذي يمثل ال 
plt.plot(x,y)
x = np.array([0, 1, 2, 3])
y = np.array([10, 20, 30, 40])
f2=plt.subplot(1, 2, 2)
f1.title.set_text('First Plot') # قم بتسميته بهذه الطريقة
# نفس الأمر بالنسبة للبقية
f2.title.set_text('Second Plot')
plt.plot(x,y)
plt.show()

الطريقة الثانية هي استخدام plt.title بعد كل subplot مباشرةً، كما يلي:

import matplotlib.pyplot as plt
import numpy as np
x = np.array([0, 1, 2, 3])
y = np.array([3, 8, 1, 10])
plt.subplot(1, 2, 1)
plt.title("First Plot")
plt.plot(x,y)
x = np.array([0, 1, 2, 3])
y = np.array([10, 20, 30, 40])
plt.subplot(1, 2, 2)
plt.title("Second Plot")
plt.plot(x,y)
plt.show()

وفي الطريقتين سيكون الخرج كالتالي:
index.png.d8bc552ad07ccc08cf4e4fff1e9f9eff.png

  • 0
نشر

يمكنك كذلك استخدام الدالة ax.set_title() لاضافة عناوين للرسومات  كالتالي:

import matplotlib.pyplot as plt
import numpy as np
x = np.array([0, 1, 2, 3])
y = np.array([3, 8, 1, 10])
plt.subplot(1, 2, 1)
ax = plt.plot(x,y)
ax.set_title("first plot")

x = np.array([0, 1, 2, 3])
y = np.array([10, 20, 30, 40])
plt.subplot(1, 2, 2)
ax = plt.plot(x,y)
ax.set_title("second plot")
plt.show()

ويقوم بوضع العناوين فوق الرسومات كالشكل التالي:

index.png.d8bc552ad07ccc08cf4e4fff1e9f9eff.png.adde1e2d1c0d9b8edcd645e3a8153e3f.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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...