Ali Ismael نشر 22 أكتوبر 2021 أرسل تقرير نشر 22 أكتوبر 2021 كيف يمكننا التحكم بعدد علامات التجزئة التي تظهر في الرسم البياني في Matplotlib ؟ 1 اقتباس
1 Ali Haidar Ahmad نشر 22 أكتوبر 2021 أرسل تقرير نشر 22 أكتوبر 2021 يمكنك استخدام الأداة pyplot.locator_params كما يلي: # للمحور Y matplotlib.pyplot.locator_params(axis='y', nbins=3) # للمحور X matplotlib.pyplot.locator_params(axis='x', nbins=3) # للمحورين معاً وهي الحالة الافتراضية matplotlib.pyplot.locator_params(nbins=3) حيث أن nbins تشير إلى عدد ال ticks التي تريدها أن تظهر. ولتقليل العدد الأعظمي من العلامات واستخدام حدود ضيقة أيضاً نضبط الوسيط tight على true: plt.locator_params(tight=True, nbins=n) مثال: import numpy as np import matplotlib.pyplot as plt plt.locator_params(axis ='x', nbins = 5) # نريد إظهار 5 علامات فقط x = np.random.normal(1, 2, 5000) y = np.random.normal(-1, 3, 2000) bins = np.linspace(-10, 10, 30) # الخاص بك axes أخذ غرض يمثل ال ax = plt.axes() ax.set_facecolor('black') # هنا فقط لإضافة خطوط شبكة للرسم أي يمكنك تجاهلها ax.grid(b = True, color ='w', linestyle ='-.', linewidth = 0.5, alpha = 0.6) plt.hist([x,y], bins = 15,label=[x,y],color=["red","blue"]) legend = ['Data1','Data2'] plt.legend(legend) plt.show() والنتيجة: 1 اقتباس
1 Ahmed Sharshar نشر 25 أكتوبر 2021 أرسل تقرير نشر 25 أكتوبر 2021 يمكنك ببساطة استخدام الدالة matplotlib.pyplot.locator_params(axis=an_axis, nbins=num_ticks) بنفس الطريقة التي في الاجابة السابقة. بالاضافة لذلك تستطيع استخدام الدالة Matplotlib.ticker.MaxNLocator والتي تضع حدا أقصي لعدد ال ticks عن طريق تمرير عدد ال bins بداخلها، لكن لاحظ أن عدد ال ticks يكون أكثر من الرقم الموضوع ب 1: المثال التالي يوضح ذلك: import math import numpy as np import matplotlib.pyplot as plt from matplotlib.ticker import MaxNLocator x=np.linspace(0,2*math.pi,100) y=np.sin(x) fig,axes=plt.subplots(1,1) axes.plot(x, y) axes.yaxis.set_major_locator(MaxNLocator(5)) #الحد الأقصي axes.set_title("Sinx Function") axes.set_xlabel("X") axes.set_ylabel("sinX") plt.show() وتكون النتيجة كالتالي: اقتباس
السؤال
Ali Ismael
كيف يمكننا التحكم بعدد علامات التجزئة التي تظهر في الرسم البياني في Matplotlib ؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.