diff --git a/server.R b/server.R
index f25877bdb969b4c95d17ef5991f6208577123a2d..247f138f32031bd3ebb5fc8a68a481807051c49e 100644
--- a/server.R
+++ b/server.R
@@ -343,36 +343,39 @@ shinyServer
   })
   
   output$histFocusScript <- renderText({
-    paste0(
-      scriptHead,
-      "# Plot filtered barplot\n",
-      "p <- plot_composition(physeq = data",
-      glue(", taxaRank1 = \"{input$focusRank}\""),
-      glue(", taxaSet1 = \"{input$focusTaxa}\""),
+    scriptArgs <- c(
+      "physeq = data",
+      glue("taxaRank1 = \"{input$focusRank}\""),
+      glue("taxaSet1 = \"{input$focusTaxa}\""),
       glue(
-        ", taxaRank2 = \"{rank_names(data16S())[which(rank_names(data16S()) == input$focusRank) + 1]}\""
+        "taxaRank2 = \"{rank_names(data16S())[which(rank_names(data16S()) == input$focusRank) + 1]}\""
       ),
-      glue(", numberOfTaxa = {input$focusNbTaxa}"),
+      glue("numberOfTaxa = {input$focusNbTaxa}"),
       glue(
-        ", fill = \"{rank_names(data16S())[which(rank_names(data16S()) == input$focusRank) + 1]}\""
-      ),
-      ifelse(is.null(checkNull(input$focusX)),
-             "",
-             glue(", x = \"{input$focusX}\"")),
-      ")\n",
-      ifelse(
-        is.null(checkNull(input$focusGrid)),
-        "",
+        "fill = \"{rank_names(data16S())[which(rank_names(data16S()) == input$focusRank) + 1]}\""
+      )
+    )
+    if (!is.null(checkNull(input$focusX))) {
+      scriptArgs <- c(scriptArgs, glue("x = \"{input$focusX}\""))
+    }
+    script <- c(
+      scriptHead,
+      "# Plot filtered barplot",
+      glue(
+        "p <- plot_composition({glue_collapse(scriptArgs, sep=', ')})"
+      )
+    )
+    if (!is.null(checkNull(input$focusGrid))) {
+      script <- c(
+        script,
         glue(
           "p <- p + facet_grid(\". ~ {input$focusGrid}\", scales = \"free_x\")"
         )
-      ),
-      ###
-      #  x = ifelse(is.null(checkNull(input$focusX)), "Sample", input$focusX)
-      ###
-      "\n",
-      "plot(p)"
-    )
+      )
+    }
+    script <- c(script, "", "plot(p)")
+    
+    return(glue_collapse(script, sep = "\n"))
   })
   
   output$histFocus <- renderPlot({