.Rtex أو .Rnw، وإلا فلن تعمل الشيفرة. لنلقِ نظرة على مثال:

knitr هذا على Overleaf
كما ترى، فإن النص الواقع بين المحرفين <<>>= و@ هو شيفرة R. وتُطبع هذه الشيفرة ومخرجاتها بتنسيق يشبه القوائم البرمجية (listing). ويمكن أن تقبل هذه القطعة من الشيفرة بعض المعاملات الإضافية لتخصيص المخرجات الديناميكية، كما هو موضح في القسم التالي.
قطع الشيفرة (Chunks)
تُسمى كتلة الشيفرة مثل تلك المعروضة في القسم السابق عادةً قطعة (chunk). ويمكنك ضبط بعض الخيارات الإضافية في قطع knitr. انظر المثال أدناه:
knitr هذا على Overleaf
هناك خياران إضافيان مُمرَّران داخل << و>>.
-
echo=FALSEيُخفي هذا الخيار الشيفرة ويطبع فقط المخرجات التي يولدها R. -
cache=TRUEإذا ضُبط cache على true، فلن تُشغَّل القطعة، بل تُستخدم فقط الكائنات التي ولّدتها. وهذا يوفر الوقت إذا لم تتغير البيانات في تلك القطعة.لاحظ أن الخيار cache=TRUE غير مدعوم حاليًا في Overleaf، لكنه يُفترض أن يعمل محليًا.
الأوامر المضمّنة (Inline)
يمكن الوصول إلى الكائنات المولَّدة في قطعة ما وطباعتها ضمن السطر.
knitr هذا على Overleaf
يطبع الأمر \Sexpr{mean(X)} المخرجات التي تعيدها شيفرة R mean(X). ويمكن تمرير أي أمر من أوامر R داخل الأقواس المعقوصة.
الرسوم البيانية
يمكن أيضًا إضافة رسوم بيانية إلى مستند knitr، كما في هذا المثال:
knitr هذا على Overleaf
يستخدم هذا المدرج التكراري بيانات مخزنة في “data.txt”، المحفوظ في مجلد العمل الحالي. وتُمرَّر بعض الخيارات المتعلقة بالشكل إلى القطعة.
plot1 هذه هي التسمية المستخدمة للإشارة إلى الرسم البياني. والبادئة “fig:” إلزامية. ويمكنك أن ترى في المثال أن الإشارة إلى الشكل تتم باستخدام \ref{fig:plot1}. fig.pos="t" معامل تحديد الموضع. وهو نفسه المستخدم في بيئة figure. fig.height=4, fig.width=4 عرض الشكل وارتفاعه. fig.cap="First plot" تعليق الشكل.
سكربتات R الخارجية
يمكنك استيراد أجزاء من سكربت R خارجي إلى مستند knitr. وهذا مفيد جدًا، إذ من الشائع إلى حد ما كتابة السكربت وتصحيحه في برنامج خارجي قبل تضمينه في مستندك. لنفترض أن لدينا شيفرة R التالية في ملف يُسمىmycode.R نضمّنه في مستند LaTeX الخاص بنا:

read_chunk("mycode.R"). ولهذا ضُبط الخيار echo=FALSE. كما يجب ألا تُخزَّن السكربتات مؤقتًا. وبعد استيراد السكربت، يمكنك طباعة قطعة باستخدام التسمية التي حددتها بعد ## ----. وفي هذه الحالة هي myrcode2.
وضعنا جميع مقاطع الشيفرة الواردة في هذا المقال في مشروع يمكنك فتحه على Overleaf.
الدليل المرجعي
بعض خيارات القطع:results. يغيّر سلوك النتائج التي تولدها شيفرة R. والقيم الممكنة هي:markupاستخدام LaTeX لتنسيق المخرجات.asisطباعة النتائج الخام من R.holdالاحتفاظ بنتائج المخرجات ودفعها إلى نهاية القطعة.hideإخفاء النتائج.
echo. ما إذا كان سيُضمَّن الشيفرة المصدرية لـ R. ومن المعاملات الأخرى:echo=2:3يطبع السطرين الثاني والثالث فقط؛echo=-2:-3يستثني السطرين الثاني والثالث فقط.
cache. ما إذا كانت قطعة الشيفرة ستُخزَّن مؤقتًا. والقيم الممكنة هي:TRUEوFALSEhighlight. ما إذا كان سيُبرز تلوين الشيفرة المصدرية. والقيم الممكنة هي:TRUEوFALSEbackground. لون خلفية القطعة. ويمكن استخدام صيغتي rgb وHTML. والقيمة الافتراضية هي “#F7F7F7”.

