|
| 1 | +library(shiny) |
| 2 | + |
| 3 | +titlePanel_h4 <- function(title, windowTitle = title) { |
| 4 | + tagList(tags$head(tags$title(windowTitle)), h4(title)) |
| 5 | +} |
| 6 | + |
| 7 | +# Define UI for application that draws a histogram |
| 8 | +shinyUI( |
| 9 | + navbarPage( |
| 10 | + title = titlePanel_h4("Modèle logistique généralisé"), |
| 11 | + tabPanel( |
| 12 | + "Un peu de théorie", |
| 13 | + sidebarLayout( |
| 14 | + sidebarPanel( |
| 15 | + withMathJax(), |
| 16 | + h4("Le Contexte"), |
| 17 | + p("Le modèle logistique généralisé est une version généralisée du |
| 18 | + modèle logistique qui admet 4 paramètres. Il est possible avec ce |
| 19 | + modèle de faire varier les deux asymptotes."), |
| 20 | + h4("L'équation mathématique :"), |
| 21 | + p("$$\\frac{A + (B-A)}{1 + e^{\\frac{xmid - input}{scal}}}$$"), |
| 22 | + h4("Eléments importants :"), |
| 23 | + p("- une croissance exponentielle"), |
| 24 | + p("- deux asymptotes horizontales variables"), |
| 25 | + hr(), |
| 26 | + h4("La fonction dans R : "), |
| 27 | + p("$$SSfpl(input, A, B, xmid, scal)$$"), |
| 28 | + h5("Arguments de la fonction : "), |
| 29 | + p("input: est un vecteur de nombre représentant le temps."), |
| 30 | + p("A : est la valeur minimale de y représenté par un asymptote |
| 31 | + horizontale."), |
| 32 | + p("B : est la valeur maximale de y représenté par un asymptote |
| 33 | + horizontale."), |
| 34 | + p("xmid : est la valeur de input pour y = (B+A)/2"), |
| 35 | + p("scal: exprime la vitesse de croissance. une valeur faible de scal |
| 36 | + indique une vitesse lente et un faible valeur de scal indique une |
| 37 | + vitesse élevé"), |
| 38 | + width = 5 |
| 39 | + ), |
| 40 | + mainPanel( |
| 41 | + p("Le graphique ci-dessous représente une courbe logistique généralisé avec |
| 42 | + A = 0.15, B = 0.95, xmid = 5, scal = 1"), |
| 43 | + plotOutput("logis_gen_theo"), |
| 44 | + width = 7 |
| 45 | + ) |
| 46 | + ) |
| 47 | + ), |
| 48 | + tabPanel( |
| 49 | + title = "A toi de jouer !", |
| 50 | + sidebarLayout( |
| 51 | + sidebarPanel( |
| 52 | + withMathJax(), |
| 53 | + p("La courbe logistique généralisée permet de modéliser des |
| 54 | + croissances exponentielles avec la présence de deux asymptotes |
| 55 | + horizontales variables"), |
| 56 | + p("L'équation mathématique de la fonction est la |
| 57 | + suivante: $$y = \\frac{A + (B-A) }{1 + e^{\\frac{xmid - input}{scal}}}$$"), |
| 58 | + numericInput(inputId = "a_ui", label = "Valeur de A (asymptote horizontale basse)", |
| 59 | + value = 0.50, min = 0.250, max = 10.00, step = 0.25), |
| 60 | + p("Valeur par défaut : 0.50"), |
| 61 | + numericInput(inputId = "b_ui", label = "Valeur de B (asymptote horizontale haute)", |
| 62 | + value = 1.00, min = 0.25, max = 10.00, step = 0.25), |
| 63 | + p("Valeur par défaut : 1"), |
| 64 | + numericInput(inputId = "xmid_ui", label = "Valeur de xmid", |
| 65 | + value = 1.00, min = 0.25, max = 10.00, step = 0.25), |
| 66 | + p("Valeur par défaut : 1"), |
| 67 | + numericInput(inputId = "scal_ui", label = "Valeur de scal", |
| 68 | + value = 1.00, min = 0.25, max = 10.00, step = 0.25), |
| 69 | + p("Valeur par défaut : 1") |
| 70 | + ), |
| 71 | + mainPanel( |
| 72 | + h4("Ajustez le meilleur modèle logistique"), |
| 73 | + p("Vous devez ajuster votre modèle en faisant varier les |
| 74 | + paramètres du modèle."), |
| 75 | + plotOutput("logis_gen_plot"), |
| 76 | + hr(), |
| 77 | + withMathJax(), |
| 78 | + uiOutput("logis_gen_model"), |
| 79 | + hr(), |
| 80 | + uiOutput("logis_gen_resid"), |
| 81 | + hr() |
| 82 | + ) |
| 83 | + ) |
| 84 | + ) |
| 85 | + ) |
| 86 | +) |
0 commit comments