Le projet : Application R Shiny du projet
BUT 3 - Domaines d’application
Nous allons développer un application R {Shiny} avancée.
C’est l’objectif des TPs précédent et de votre Projet final.
Prérequis
Rappel
Nous avons inclus une application R-Shiny dans notre package. Il est facile de partager ce package, ainsi que l’application Shiny.
Pensez à sauvegarder et à versionner votre travail aux étapes importantes.
Pensez bien a faire un pull avant de commencer à travailler.
Ce TP représente le rendu final de votre projet.
L’issue du Projet
- Créer une issue dans votre projet avec pour nom Projet.
- Y ajouter ceci :
# Projet : Application R Shiny du projet
## Tâches :
1. [ ] Créer une nouvelle application R Shiny
2. [ ] Une carte dynamique
3. [ ] Un Widget dynamique
4. [ ] Interraction entre le widget et la carte
5. [ ] L'application R Shiny utlise une fonction de mon package
...
## Description de mon application
Mon application permet de faire...
## Version
Le commit correspondant au rendu final : <clé SHA>- Dans l’issue principal du projet Rendu de notre projet associer cette dernière issue dans Linked Items
- utiliser le numéro de l’issue ou son nom
L’application du projet
Ici vous disposez du choix du rendu final du projet du point de vu de l’application R Shiny.
Vous pouvez proposer votre application et/ou suivre l’application de cette page.
- L’application R Shiny doit contenir au minimum :
- 1 widget
- 1 carte
- Ces deux widgets doivent être dynamique et interagir entre eux.
- L’application R Shiny doit utiliser au moins une fonction de votre package pour fonctionner
- Le package doit rester normé et valide (ainsi que les CI/CD, sauf TP5)
L’application du TP
Si vous faites un projet personnel vous pouvez éviter cette partie.
Proposition 1
Voici une proposition pour l’application Shiny.
Vous pouvez utiliser les données d’accidents dans le vaucluse en 2019 pour les afficher sur une carte et les filtrer dynamiquement suivant les attributs/catégories.
Lecture du fichier geojson
accidents.geo.2019.vaucluse <- st_read("accidents2019_vaucluse.geojson", quiet = TRUE)
## passage en projection World Geodetic System 1984
accidents_wgs84 <- st_transform(accidents.geo.2019.vaucluse,4326)L’attribut “grav” donne la gravité de l’accident:
factor(grav,
levels = c(2,3,4,1),
labels = c("Tué", "Blessé hospitalisé","Blessé léger","Indemne")Cette proposition repose sur le travail de Kim Antunez et Etienne Côme lors des Rencontres R 2023 https://github.com/antuki/RR2023_tuto_statspatiale.
Il s’agit d’un tutoriel d’apprentissage et d’exercices de cartographie sur les accidents en 2019 à Paris.
La carte
Voici un exemple du rendu de la carte.
Proposition 2
On va utiliser le fichier de donnée des Pokemons (TP6).
Les Pokemons sont disposés aléatoirement en France métropolitaine et quelques attributs sont affichés (avec filtre suivant le Type).
La carte
Maintenant vous disposez d’un package R (valide et normé) et d’une application R Shiny complète. Vous bénéficiez de l’intégration continue pour tester et packager, [et du déploiement continue pour containériser et mettre en production votre application R Shiny Facultatif].
Votre application R Shiny, est un projet personnel et contient une carte et un widget qui interagissent ensembles et utilise au moins une fonction de votre package.
Questions:
- Dans l’issue de ce Projet (“Projet”).
- Répondez aux questions suivantes dans la description de l’issue :
Etes vous capable de créer un package R ?
Etes vous capable de créer une application R Shiny dans un package R ?
Qu’elles sont les plus grandes difficultés que vous avez rencontré ?
Avez-vous des suggestions pour améliorer ces TPs ?
- Ajouter cette issue comme items liés (linked items) à l’issue Rendu de notre projet
- Vérifier que vous avez suivie les consignes.
- Vérifier que vous respectez bien les Contraintes communes.
- Vérifier que votre package est toujours normé, valide et bien documenté.
- Vérifier que le contenu des jobs GitLab ne comporte pas d’erreur (supprimer ceux du le TP5 si nécessaire).
- Vérifier que votre application fonctionne correctement.
- Vérifier la clarté des commentaires et du code.
- Vérifier que votre package et application R Shiny n’ont pas de dépendances à votre environnement de travail.
- Vérifier les issues du projet.
Afin de vérifier que votre package et application R Shiny sont bien normés et valides, vous pouvez télécharger le package source de votre projet et l’installer et tester sur un autre ordinateur. Cela évitera d’avoir un package dépendent de votre environnement de travail et qui ne fonctionne pas dans celui de votre évaluateur.
Projet Fini
Afin de valider la fin de votre projet, merci d’ajouter un commentaire dans l’issue principale du projet (c.f. TP1) en me notifiant et en ajoutant la clé <SHA> et Tags (PROJET) du commit correspondant.
Ainsi que m’envoyer un email à jean-francois.rey@inrae.fr pour valider le rendu et me signaler toutes modifications (changement de dépôt ou autre).
Pensez à clôturer les issues finis.
DATE de Maximale de rendu le 12 Janvier 2025 à 12H au plus tard (1 point en moins par jour de retard du rendu)
! Bonne continuation et bravo !
👍