Newer
Older
Une appli web Shiny pour détecter les périodes de chaleur de Brebis - TechCare project
v1.0.0
Analyse de données issues de ALPHA_box et ALPHA_App - UMR SELMET
Intégration d'un algorithme de détection de rupture dans un modèle de processus de Poisson marqué pour aide à visualisation.
* bertrand.cloez@inrae.fr (MISTEA)
* isabelle.sanchez@inrae.fr (MISTEA)
* floriane.villaines@inrae.fr (stagiaire IUT Avignon)
* @marie-pierre.etienne (Agro Campus Ouest)
Pour récupérer l'algorithme et voir les visualisations possibles, se référer au repository suivant: https://forgemia.inra.fr/isabelle.sanchez/alpha_project
```
appwow
|-->data
|-->src
|-->server
-->serverWelcome.R
-->serverImport.R
-->serverHowTo.R
-->serverAbout.R
|-->ui
-->uiWelcome.R
-->uiImport.R
-->uiHowTo.R
-->uiAbout.R
|-->www
->functions_graph.R
->functions_detectC.R
->global.R
->server.R
->ui.R
```
# Reunion 21/04
A partir du rapport présent dans `alpha_project`, intégrer dans l'appli:
* la fonction d'import des données de capteurs des chevauchements: importDataCapteur() **OK**
* l'appel à la fonction dans la partie server avec en sortie:
- onglet "table": le tableau en datatable() du fichier importé **OK**
- onglet "graphs desc": quelques graphiques descriptifs **OK**
- Distribution des durées de chevauchements pour chaque brebis: traduire titre, tourner les labels axe X en vertical ggplot2 (axe **OK**, titre à vérifier)
- Distribution des durées de chevauchements des béliers **OK** (titre à vérifier)
- Activité des béliers lors de la lutte **OK**
- table des total chevauchements par bélier **OK**
* changer les noms des variables reactives en accord avec les sorties obtenus (plotOutlier devriendrait plotDescChevBrebis) **OK**
* tu peux supprimer des onglets de sorties en accord avec ton appli (uiImport.R) **OK**
* Commencer à rédiger trame rapport **OK**
# Reunion 26/04
* changer labels Y des graphs à mettre en anglais **OK** , ainsi que nom colonne 1 dans le tableau des béliers (bas d'onglet) **OK**
* changer copie d'écran dans le HowTo de l'exemple de fichier à importer (image à créer, à enregistrer dans le ss-rep ./www, puis changer appel dans uiHowTo.R) **OK**
* mettre à jour la page d'accueil de l'appli en s'inspirant du voca utilisé dans la publi de Laclef *et al.* (cf. dans ./www) **OK** + intégrer une photo telle que tete2.png :-D **OK**
* Débuter l'intégration de la metho de détection de ruptures
- intégrer les fonctions dans function_detectR.R **OK**
- intégrer l'appel de la metho sur mydata() dans serverImport.R: au début mettre des messages de contrôles qui apparaitront dans la log **OK**
- dans un onglet "detection of ovulations": **estrus?**
- intégrer en verbatim box1 (`$outBH $outBH$S`)
- intégrer en verbatim box2 (`out.rupture$lambda_n et out.rupture$mu_n`)
- intégrer en datatable box 3 le tableau des ruptures
- intégrer le graph box4 (height=1200 en grand) en plotly des ruptures
* appel library(tidyr) à mettre dans server.R et global.R aussi (et si possible, les mettre à côté de dplyr car ça concerne les mêmes types d'actions ;-) **OK**
truc extra-pro: **OK**
* plusieurs personnels anglophone **OK**
* réunions d'axe, de groupe de travail, de séminaires d'unité en anglais (j'ai assisté à 2 etc...) **OK**
* lectures d'articles scientifiques **OK**
* doc en anglais: shiny, shiny dashboard, **OK**
rajouter dans le § new skills: git + gitlab et en général les outils collaboratifs **OK**
* Rajouter là où tu penses que ça aide à la compréhension des titres aux box **titres à mettre en anglais**
* Intégration de la metho de détection de ruptures dans l'appli
- remplir doc roxygen2 dans detectS_BH() **manque alpha**
- dans un onglet "detection of ovulations": **estrus?**
- créer des box (au moins 4) avec des titres
- intégrer en verbatim box1 (`$outBH $outBH$S`) **OK**
- intégrer en verbatim box2 (`out.rupture$lambda_n et out.rupture$mu_n`) **OK**
- intégrer en datatable box 3 le tableau des ruptures **OK**
- intégrer le graph box4 (height=1200 en grand) en plotly des ruptures **s'affiche dans Viewer mais pas dans l'appli** **erreur : objet de type difftime**
* Modifier le Howto **fait, à mettre à jour quand j'aurais réussi à enlever le Cleaning data**
* t'approprier le code en mettant des commentaires à toi
* supprimer toutes les vieilles références à oriole et wow **supprimer le Cleaning data**
* faire le diagramme **OK**
# Réunion 09/05
* continuer rédaction rapport
* Rajouter là où tu penses que ça aide à la compréhension des titres aux box **titres à mettre en anglais**
* dans panel "graph descriptifs":
- rajouter les boxplots sans les outliers (faire un tri avant sur le dataset d'entrée puis refaire le boxplot - voir si dans le boxplot de ggplot2 il est possible de récupérer les infos de la boite à savoir qui sont les outliers, ceux qui sont à plus de Q3 + 1.5(Q3 - Q1)), autant sur brebis que sur celui des béliers
- rajouter le grpah de la section du rapport 3.1.2 avec rajout du tri un peu particulier sur les temps de mesures où les chevauchements répondent au crit-re de Nathalie (critère visible dans 3.1.2 aussi)
* Intégration de la metho de détection de ruptures dans l'appli
- remplir doc roxygen2 dans detectS_BH() **manque alpha**
- voir pourquoi le graph des ruptures n'apparait pas
* Revoir structure de l'UI => par exemple simplifier en passant de item et subitem à 3 nouveaux items (import, desc, rupture)
* si tout le reste OK: intégrer les infos de l'algo de Nathalie dans le graph des ruptures
# Réunion 15/05
* refaire les boxplots sans les outliers en déterminant le quantile et en changeant la limite de ylim **OK**
* modifier la traduction d'ovulation et traduire le titre des boxs dans l'onglet Detection of ovulations **OK**
* supprimer le box 1 dans Detection of ovulations **OK**
* afficher le graph ggplot avec le critère de Nathalie
* tester si l'appli focntionne avec tous les jeux de données **OK**
# Réunion 30/05
* ajouter une box (dans Detection of ovulation) avec :
- la table de contingence de global
- l'explication de la légende du graphique
* avancer le rapport
* ré-importer le graph en partant de celui du rapport
* comprendre les NA dans le dataset
# Réunion 05/06
* boxplot du nombre de chevauchement pour les brebis et béliers (avec et sans outlier) **OK**
* tableau croisé du nombre de chevauchement par jour et par brebis **OK**
* ajouter une option d'export sur le tableau du fichier commun (detection of oestrus) **OK**
Tu peux trouver une "feuille de triche" Shiny dans Rstudio: Help -> "Cheat Sheets" -> "Web applications with Shiny"
* https://elise.maigne.pages.mia.inra.fr/formation_shiny/presentation_jour1.html#1
* https://shiny.rstudio.com/tutorial/
* https://shiny.rstudio.com/gallery/
* https://thinkr.fr/a-decouverte-de-shiny/
* https://shiny.rstudio.com/articles/
* http://isabelle.sanchez.pages.mia.inra.fr/blog_pyr/2019/10/14/gdt-pyr-9-developpement-dapplications-avec-r.html
* https://www.charlesbordet.com/fr/reactive-shiny/#c-est-quoi-la-reactivite
* https://mastering-shiny.org/
* https://thinkr.fr/tableaux-interactifs-avec-r-pour-shiny-et-vos-pages-web/#Quelques_extensions_utiles_pour_votre_DataTable
# Rapport et soutenance
* rapport format libre. à rendre fin mai (au plus tard) car soutenance en juin => commencer à rédiger le rapport dès maintenant...
* soutenance: 15 min de présentation + 10 min de questions avec diapos
```R
citation("shiny")
citation("shinydashboard")
```