R Shiny Tutorial: How to Make Interactive Web Applications in R.

نشرت: 2020-03-16

جدول المحتويات

مقدمة

في هذا العصر التكنولوجي الحديث ، تتوفر العديد من التطبيقات لنا جميعًا - من تتبع مستوى لياقتنا البدنية والنوم إلى تزويدنا بأحدث المعلومات حول أسواق الأسهم. تبدو تطبيقات مثل Robinhood و Google Fit و Workit مفيدة للغاية لأنها تستخدم بيانات وإحصاءات في الوقت الفعلي. نظرًا لأن R هي شركة رائدة في مجال الحوسبة والبرمجة الإحصائية ، يحتاج المطورون إلى نظام لاستخدام قوته في إنشاء التطبيقات. تعرف على المزيد حول البرمجة R.

هذا هو المكان الذي يأتي فيه R Shiny لإنقاذ اليوم. في هذا البرنامج التعليمي R Shiny ، ستتعرف على الأساسيات.

ما هو R Shiny؟

Shiny هي حزمة R تم تطويرها لبناء تطبيقات ويب تفاعلية في R. باستخدام هذا ، يمكنك إنشاء تطبيقات ويب باستخدام كود HTML و CSS الأصلي مع كود R Shiny. يمكنك إنشاء تطبيقات ويب قائمة بذاتها على موقع ويب تجعل تصور البيانات أمرًا سهلاً. يمكن لهذه التطبيقات التي تم إنشاؤها من خلال R Shiny عرض كائنات R بسلاسة مثل الجداول والمؤامرات.

دعونا نلقي نظرة على بعض ميزات R Shiny:

  • أنشئ تطبيقات ويب تحتوي على عدد أقل من سطور التعليمات البرمجية ، بدون جافا سكريبت.
  • هذه التطبيقات مباشرة ويمكن الوصول إليها من قبل المستخدمين مثل جداول البيانات. قد تتغير المخرجات في الوقت الفعلي إذا قام المستخدمون بتغيير المدخلات.
  • يمكن للمطورين الذين لديهم معرفة قليلة بأدوات الويب إنشاء تطبيقات باستخدام R Shiny.
  • يمكنك الحصول على عناصر واجهة مستخدم مدمجة لعرض الجداول ومخرجات كائنات R والمؤامرات.
  • يمكنك إضافة تصورات وتقارير حية إلى تطبيق الويب باستخدام هذه الحزمة.
  • يمكن ترميز واجهات المستخدم في R أو يمكن تحضيرها باستخدام HTML أو CSS أو JavaScript.
  • تم إنشاء واجهة المستخدم الافتراضية باستخدام Bootstrap.
  • يأتي مع حزمة WebSocket التي تتيح الاتصال السريع بين خادم الويب و R.

قراءة: شجرة القرار في R

مكونات تطبيق R Shiny

يحتوي التطبيق اللامع على مكونين أساسيين - كائن واجهة المستخدم ووظيفة الخادم. هذه هي الحجج التي تم تمريرها إلى طريقة shinyApp . تقوم هذه الطريقة بإنشاء كائن تطبيق باستخدام الوسائط.

تعلم علم البيانات من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.

اقرأ أيضًا: خوارزمية KNN في R.

دعونا نفهم الأجزاء الأساسية لتطبيق R Shiny بالتفصيل:

وظيفة واجهة المستخدم

تحدد هذه الوظيفة مظهر تطبيق الويب. يجعل التطبيق تفاعليًا من خلال الحصول على مدخلات من المستخدم وعرضه على الشاشة. يمكن استخدام علامات HTML و CSS لجعل التطبيق يبدو أفضل. لذلك ، أثناء إنشاء ملف ui.R ، تقوم بإنشاء ملف HTML بوظائف R.

إذا قمت بكتابة fluidPage () في وحدة التحكم R ، فسترى أن الطريقة تُرجع علامة <div class = ”container-fluid”> </div>.

وظائف الإدخال المختلفة هي:

  • selectInput () - تُستخدم هذه الطريقة لإنشاء قائمة HTML منسدلة بها خيارات متنوعة للاختيار.
  • numericInput () - تنشئ هذه الطريقة منطقة إدخال لكتابة نص أو أرقام.
  • radioButtons () - يوفر هذا أزرار اختيار للمستخدم لتحديد إدخال.

طرق التخطيط

يتم تنفيذ ميزات التخطيط المتنوعة المتوفرة في Bootstrap بواسطة R Shiny. المكونات هي:

اللوحات

هذه هي الطرق التي تجمع العناصر معًا في لوحة واحدة. وتشمل هذه:

  • AbsolutePanel ()
  • لوحة الإدخال ()
  • لوحة شرطية ()
  • headerPanel ()
  • لوحة ثابتة ()

وظائف التخطيط

هذه تنظم اللوحات لتخطيط معين. وتشمل هذه:

  • سائل ()
  • تخطيط عمودي ()
  • تخطيط تدفق()
  • SplitLayout ()
  • الشريط الجانبي

طرق الإخراج

تُستخدم هذه الطرق لعرض صور وجداول ومؤامرات مكونات مخرجات R. هم انهم:

  • tableOutput () - تُستخدم هذه الطريقة لعرض جدول R.
  • plotOutput () - تُستخدم هذه الطريقة لعرض كائن مؤامرة R.

وظيفة الخادم

بعد إنشاء مظهر التطبيق وطرق أخذ قيم الإدخال من المستخدم ، حان الوقت لإعداد الخادم. تساعدك وظائف الخادم على كتابة رمز جانب الخادم لتطبيق Shiny. يمكنك إنشاء وظائف تقوم بتعيين مدخلات المستخدم إلى المخرجات المقابلة. يتم استدعاء هذه الوظيفة بواسطة مستعرض الويب عند تحميل التطبيق.

يأخذ معلمة الإدخال والإخراج ، ويتم تجاهل قيم الإرجاع. يتم أخذ معلمة جلسة اختيارية بواسطة هذه الطريقة أيضًا.

R Shiny تعليمي: كيف تبدأ مع R Shiny؟

خطوات بدء العمل مع حزمة R Shiny هي كما يلي:

  • انتقل إلى وحدة التحكم R واكتب الأمر - install.packages ("لامع")
  • تأتي الحزمة مع 11 مثالًا للتطبيق المدمج لتتمكن من فهم كيفية عمل Shiny

يمكنك البدء بمثال Hello Shiny لفهم البنية الأساسية. اكتب هذا الرمز لتشغيل Hello Shiny:

مكتبة (لامعة)

runExample (“01_hello”)

خطوات إنشاء تطبيق Shiny جديد هي:

  • افتح RStudio وانتقل إلى خيار الملف
  • حدد مشروع جديد في دليل وانقر على تطبيق "Shiny Web"
  • ستحصل على رسم بياني وشريط تمرير لاختبار التغييرات في الإخراج فيما يتعلق بالإدخال
  • ستحصل على نصي نصي ui.R و server.R لترميز التطبيق وتخصيصه

نصائح لتطوير التطبيقات اللامعة

  • اختبر التطبيق في المتصفح لترى كيف سيبدو قبل إرساله للإنتاج
  • قم بتشغيل البرنامج النصي بأكمله أثناء تصحيح أخطاء التطبيق
  • كن حذرًا بشأن الأخطاء الشائعة مثل الفواصل

خاتمة

إذا كنت مهتمًا بالتعرف على علوم البيانات ، فراجع برنامج PG التنفيذي في علوم البيانات الذي تم إنشاؤه للمهنيين العاملين ويقدم أكثر من 10 دراسات حالة ومشاريع ، وورش عمل عملية عملية ، وإرشاد مع خبراء الصناعة ، 1-on-1 مع موجهين في الصناعة ، أكثر من 400 ساعة من التعلم والمساعدة في العمل مع الشركات الكبرى.

أفضل جزء في Shiny هو أنك لست مضطرًا إلى معرفة HTML أو CSS أو JavaScript لاستخدامه. علاوة على ذلك ، يمكنك إنشاء تطبيقات ونشرها على الإصدار المجاني من shinyapps.io. احتفظ بهذا البرنامج التعليمي R Shiny في متناول يديك أثناء البدء.

ما هي فوائد R Shiny؟

يحتاج كل عالم بيانات إلى الحصول على مساعدة من أدوات معينة لإخراج الرؤى من البيانات أمام عامة الناس. Shiny هي حزمة متوفرة في R لتطوير تطبيقات الويب التفاعلية. تحصل على الكثير من الخيارات لتوصيل نتائجك من خلال النصوص أو الجداول أو التصورات أو المخططات التفاعلية. إذا كنت تعرف برمجة R ، فيمكنك بسهولة تطوير تطبيق لأن Shiny سهل الاستخدام للغاية. توجد إمكانات مضمنة لمشاركة عملك مع الأصدقاء والزملاء بسهولة. تصميم تطبيق Shiny مذهل جدًا. حتى إذا كنت تنظر إلى الشاشة الافتراضية ، فستجدها بديهية وأنيقة.

كيف يختلف تطبيق Shiny عن التطبيقات التقليدية؟

دعونا نفهم هذا بشكل أفضل بمساعدة مثال على تطبيق الطقس. عندما يعيد المستخدم تحميل الصفحة أو حتى يغير إدخالًا صغيرًا على الصفحة ، سيتعين على التطبيق تحديث الصفحة بأكملها بمساعدة JS. سيضيف هذا الكثير من الحمل إلى جانب الخادم من أجل معالجة التحديث.

من ناحية أخرى ، سوف يقوم Shiny بعزل أو إعادة تحميل عناصر التطبيق التي تقلل من تحميل الخادم. ستلعب البنية دورًا مهمًا جدًا في فهم الشفرة وكذلك تصحيح أخطائها. لقد وجد أن التمرير عبر تطبيقات الويب صعب بعض الشيء مع تطبيقات Shiny مقارنة بالتطبيقات التقليدية.

هل R Shiny صعب التعلم؟

إطار العمل اللامع هو حزمة متوفرة بلغة R وهي مفيدة لبناء تطبيقات ويب تفاعلية. الحزمة رائعة لأنها تتيح لك إنشاء تصورات وتقارير فعالة للغاية بناءً على مجموعات البيانات المتاحة. بخلاف استخدام العناصر اللامعة ، يمكنك أيضًا استخدام عناصر HTML لتخصيص محتوى التطبيق.

على الرغم من أن Shiny أداة قوية جدًا ، ستجد أنه من السهل جدًا معرفة ما إذا كنت على دراية بالبرمجة في R. يوصى بشدة بتعلم R Shiny إذا كنت تفكر في إضافة شيء إبداعي إلى محفظتك.