R Shiny Tutorial: So erstellen Sie interaktive Webanwendungen in R
Veröffentlicht: 2020-03-16Inhaltsverzeichnis
Einführung
In diesem modernen technologischen Zeitalter stehen uns allen verschiedene Apps zur Verfügung – von der Verfolgung unseres Fitnessniveaus über den Schlaf bis hin zu den neuesten Informationen über die Aktienmärkte. Apps wie Robinhood, Google Fit und Workit scheinen so erstaunlich nützlich zu sein, weil sie Echtzeitdaten und -statistiken verwenden. Da R ein Vorreiter auf dem Gebiet der statistischen Berechnung und Programmierung ist, benötigen Entwickler ein System, um seine Leistungsfähigkeit zum Erstellen von Apps zu nutzen. Erfahren Sie mehr über die R-Programmierung.
Hier kommt R Shiny, um den Tag zu retten. In diesem R Shiny-Tutorial lernen Sie die Grundlagen kennen.
Was ist R Shiny?
Shiny ist ein R-Paket, das zum Erstellen interaktiver Webanwendungen in R entwickelt wurde . Auf diese Weise können Sie Webanwendungen erstellen, die nativen HTML- und CSS-Code zusammen mit R Shiny-Code verwenden. Sie können eigenständige Web-Apps auf einer Website erstellen, die die Datenvisualisierung vereinfachen. Diese über R Shiny erstellten Anwendungen können R-Objekte wie Tabellen und Diagramme nahtlos anzeigen.
Schauen wir uns einige der Funktionen von R Shiny an:
- Erstellen Sie Webanwendungen mit weniger Codezeilen, ohne JavaScript.
- Diese Anwendungen sind live und für Benutzer wie Tabellenkalkulationen zugänglich. Die Ausgaben können sich in Echtzeit ändern, wenn die Benutzer die Eingabe ändern.
- Entwickler mit wenig Wissen über Web-Tools können auch Apps mit R Shiny erstellen.
- Sie erhalten integrierte Widgets zum Anzeigen von Tabellen, Ausgaben von R-Objekten und Diagrammen.
- Mit diesem Paket können Sie der Webanwendung Live-Visualisierungen und Berichte hinzufügen.
- Die Benutzeroberflächen können in R codiert oder mit HTML, CSS oder JavaScript erstellt werden.
- Die Standardbenutzeroberfläche wird mit Bootstrap erstellt.
- Es wird mit einem WebSocket-Paket geliefert, das eine schnelle Kommunikation zwischen dem Webserver und R ermöglicht.
Lesen Sie: Entscheidungsbaum in R
Komponenten einer R Shiny-App
Eine Shiny-App besteht aus zwei Hauptkomponenten – einem Benutzeroberflächenobjekt und einer Serverfunktion. Dies sind die Argumente, die an die ShinyApp-Methode übergeben werden . Diese Methode erstellt ein Anwendungsobjekt unter Verwendung der Argumente.
Lernen Sie Data Science von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.
Lesen Sie auch: KNN-Algorithmus in R
Lassen Sie uns die grundlegenden Teile einer R Shiny-App im Detail verstehen:
Benutzerschnittstellenfunktion
Diese Funktion definiert das Erscheinungsbild der Webanwendung. Es macht die Anwendung interaktiv, indem es Eingaben vom Benutzer erhält und auf dem Bildschirm anzeigt. HTML- und CSS-Tags können verwendet werden, um die Anwendung besser aussehen zu lassen. Während Sie also die ui.R-Datei erstellen, erstellen Sie eine HTML-Datei mit R-Funktionen.
Wenn Sie fluidPage() in der R-Konsole eingeben, sehen Sie, dass die Methode ein Tag <div class=”container-fluid”></div> zurückgibt.
Die verschiedenen Eingangsfunktionen sind:
- selectInput () – Diese Methode wird zum Erstellen eines Dropdown-HTML verwendet, das verschiedene Auswahlmöglichkeiten bietet.
- numericInput () – Diese Methode erstellt einen Eingabebereich zum Schreiben von Text oder Zahlen.
- radioButtons () – Dies stellt Optionsfelder bereit, mit denen der Benutzer eine Eingabe auswählen kann.
Layout-Methoden
Die verschiedenen in Bootstrap verfügbaren Layoutfunktionen werden von R Shiny implementiert. Die Komponenten sind:
Platten
Dies sind Methoden, die Elemente in einem einzigen Panel zusammenfassen. Diese schließen ein:
- absolutePanel()
- inputPanel()
- bedingtesPanel()
- headerPanel()
- festesPanel()
Layoutfunktionen
Diese organisieren die Panels für ein bestimmtes Layout. Diese schließen ein:
- fluidRow()
- vertikalesLayout()
- flowLayout()
- splitLayout()
- SeitenleisteLayout()
Ausgabemethoden
Diese Methoden werden zum Anzeigen von Bildern, Tabellen und Diagrammen von R-Ausgabekomponenten verwendet. Sie sind:
- tableOutput() – Diese Methode wird zum Anzeigen einer R-Tabelle verwendet
- plotOutput() – Diese Methode wird zum Anzeigen eines R-Plot-Objekts verwendet
Serverfunktion
Nachdem Sie das Erscheinungsbild der Anwendung und die Möglichkeiten zur Entgegennahme von Eingabewerten des Benutzers erstellt haben, ist es an der Zeit, den Server einzurichten. Die Serverfunktionen helfen Ihnen, den serverseitigen Code für die Shiny-App zu schreiben. Sie können Funktionen erstellen, die die Benutzereingaben den entsprechenden Ausgaben zuordnen. Diese Funktion wird beim Laden der Anwendung vom Webbrowser aufgerufen.

Es nimmt einen Eingabe- und einen Ausgabeparameter und Rückgabewerte werden ignoriert. Ein optionaler Sitzungsparameter wird auch von dieser Methode übernommen.
R Shiny-Tutorial: Wie fange ich mit R Shiny an?
Schritte zum Arbeiten mit dem R Shiny-Paket sind wie folgt:
- Gehen Sie zur R-Konsole und geben Sie den Befehl ein – install.packages („shiny“)
- Das Paket enthält 11 integrierte Anwendungsbeispiele, damit Sie verstehen, wie Shiny funktioniert
Sie können mit dem Hello Shiny-Beispiel beginnen , um die Grundstruktur zu verstehen. Geben Sie diesen Code ein, um Hello Shiny auszuführen:
Bibliothek (glänzend)
runExample(“01_hello”)
Die Schritte zum Erstellen einer neuen Shiny-App sind:
- Öffnen Sie RStudio und gehen Sie zur Option Datei
- Wählen Sie in einem Verzeichnis Neues Projekt und klicken Sie auf die Anwendung „Shiny Web“.
- Sie erhalten ein Histogramm und einen Schieberegler, um die Änderungen der Ausgabe in Bezug auf die Eingabe zu testen
- Sie erhalten zwei Skripte ui.R und server.R zum Codieren und Anpassen der Anwendung
Tipps für die Shiny-App-Entwicklung
- Testen Sie die App im Browser, um zu sehen, wie sie aussieht, bevor Sie sie zur Produktion senden
- Führen Sie das gesamte Skript aus, während Sie die App debuggen
- Achten Sie auf häufige Fehler wie Kommas
Fazit
Wenn Sie neugierig sind, etwas über Data Science zu lernen, schauen Sie sich unser Executive PG-Programm in Data Science an , das für Berufstätige entwickelt wurde und mehr als 10 Fallstudien und Projekte, praktische Workshops, Mentoring mit Branchenexperten und 1-on-1 bietet mit Mentoren aus der Branche, mehr als 400 Stunden Lern- und Arbeitsunterstützung bei Top-Unternehmen.
Das Beste an Shiny ist, dass Sie kein HTML, CSS oder JavaScript kennen müssen, um es zu benutzen. Darüber hinaus können Sie Anwendungen erstellen und sie auf der kostenlosen Version von shineapps.io bereitstellen. Halten Sie dieses R Shiny-Tutorial für den Einstieg bereit. Jeder Datenwissenschaftler muss die Hilfe bestimmter Tools in Anspruch nehmen, um die Erkenntnisse aus Daten der Öffentlichkeit zugänglich zu machen. Shiny ist ein in R verfügbares Paket zur Entwicklung interaktiver Webanwendungen. Sie erhalten viele Möglichkeiten, Ihre Ergebnisse über Texte, Tabellen, Visualisierungen oder interaktive Diagramme zu kommunizieren. Wenn Sie sich mit der R-Programmierung auskennen, können Sie ganz einfach eine App entwickeln, da Shiny ziemlich einfach zu bedienen ist. Es gibt integrierte Funktionen, mit denen Sie Ihre Arbeit ganz einfach mit Freunden und Kollegen teilen können. Das Design der Shiny-App ist ziemlich erstaunlich. Selbst wenn Sie sich die Standardanzeige ansehen, werden Sie sie ziemlich intuitiv und elegant finden. Lassen Sie uns dies anhand eines Beispiels einer Wetteranwendung besser verstehen. Immer wenn der Benutzer die Seite neu lädt oder auch nur eine kleine Eingabe auf der Seite ändert, muss die App die gesamte Seite mit Hilfe von JS aktualisieren. Dadurch wird der Serverseite viel Last hinzugefügt, um das Update zu verarbeiten. Das Shiny-Framework ist ein in R verfügbares Paket, das zum Erstellen interaktiver Webanwendungen nützlich ist. Das Paket ist wunderbar, da es Ihnen ermöglicht, hochwirksame Visualisierungen und Berichte basierend auf den verfügbaren Datensätzen zu erstellen. Neben der Verwendung der Shiny-Elemente können Sie auch die HTML-Elemente verwenden, um den Anwendungsinhalt anzupassen. Was sind die Vorteile von R Shiny?
Wie unterscheidet sich Shiny von den herkömmlichen Anwendungen?
Andererseits wird Shiny die App-Elemente isolieren oder neu laden, die die Serverlast reduzieren. Die Struktur spielt eine sehr wichtige Rolle beim Verstehen und Debuggen des Codes. Es hat sich herausgestellt, dass das Scrollen durch die Webanwendungen mit Shiny-Apps im Vergleich zu den herkömmlichen Anwendungen etwas schwierig ist. Ist R Shiny schwer zu lernen?
Obwohl Shiny ein ziemlich mächtiges Tool ist, werden Sie es ziemlich einfach zu erlernen finden, wenn Sie sich mit der Programmierung in R auskennen. Es wird dringend empfohlen, R Shiny zu lernen, wenn Sie daran denken, Ihrem Portfolio etwas Kreatives hinzuzufügen.