كيفية رسم التوزيع الطبيعي للسجل في r
لرسم دالة الكثافة الاحتمالية للتوزيع اللوغاريتمي الطبيعي في R، يمكننا استخدام الوظائف التالية:
- dlnorm(x, meanlog = 0, sdlog = 1) لإنشاء دالة كثافة الاحتمال.
- منحنى (وظيفة، من = NULL، إلى = NULL) لرسم دالة كثافة الاحتمال.
على سبيل المثال، يوضح التعليمة البرمجية التالية كيفية رسم دالة كثافة الاحتمالية للتوزيع اللوغاريتمي الطبيعي بمتوسط = 0 وانحراف معياري = 1 (على مقياس لوغاريتمي) حيث ينتقل المحور السيني للمخطط من 0 إلى 10:
curve(dlnorm(x, meanlog=0, sdlog=1), from=0, to=10)
بشكل افتراضي، متوسط = 0 وsdlog =1، مما يعني أنه يمكننا إنتاج نفس المخطط بالضبط دون تحديد هذه المعلمات في الدالة dlnorm() :
curve(dlnorm(x), from=0, to=10)
يمكننا إضافة عنوان، وتغيير تسمية المحور Y، وزيادة عرض الصف، وحتى تغيير لون الصف لجعل الحبكة أكثر جمالية:
curve(dlnorm(x), from=0, to=10, main = 'Log Normal Distribution', #add title ylab = 'Density', #change y-axis label lwd = 2, #increase line width to 2 col = 'steelblue') #change line color to steelblue
يمكننا أيضًا إضافة منحنيات متعددة إلى الرسم البياني لمقارنة التوزيعات اللوغاريتمية الطبيعية بانحرافات معيارية مختلفة. على سبيل المثال، تقوم التعليمة البرمجية التالية بإنشاء مخططات توزيع عادية باستخدام sdlog = 0.3، وsdlog = 0.5، وsdlog = 1:
curve(dlnorm(x, meanlog=0, sdlog=.3), from=0, to=10, col='blue') curve(dlnorm(x, meanlog=0, sdlog=.5), from=0, to=10, col='red', add=TRUE) curve(dlnorm(x, meanlog=0, sdlog=1), from=0, to=10, col='purple', add=TRUE)
يمكننا إضافة وسيلة إيضاح إلى المخطط باستخدام وظيفة legend() ، والتي تأخذ الصيغة التالية:
وسيلة الإيضاح (x، y=NULL، legend، fill، col، bg، lty، cex)
ذهب:
- x وy: إحداثيات x وy المستخدمة لتحديد موضع وسيلة الإيضاح
- وسيلة الإيضاح: النص الذي سيتم وضعه في وسيلة الإيضاح
- ملء: ملء اللون داخل وسيلة الإيضاح
- col: قائمة الألوان التي سيتم استخدامها للخطوط الموجودة داخل وسيلة الإيضاح
- bg: لون خلفية وسيلة الإيضاح
- lty: نمط الخط
- cex: حجم النص في وسيلة الإيضاح
في مثالنا سوف نستخدم بناء الجملة التالي لإنشاء وسيلة إيضاح:
#create density plots curve(dlnorm(x, meanlog=0, sdlog=.3), from=0, to=10, col='blue') curve(dlnorm(x, meanlog=0, sdlog=.5), from=0, to=10, col='red', add=TRUE) curve(dlnorm(x, meanlog=0, sdlog=1), from=0, to=10, col='purple', add=TRUE) #add legend legend(6, 1.2, legend=c("sdlog=.3", "sdlog=.5", "sdlog=1"), col=c("blue", "red", "purple"), lty=1, cex=1.2)