J'ai configuré un Rscript pour analyser les options de la ligne de commande. Il analyse correctement le nom du fichier, mais quand j'essaie de spécifier ce qu'il faut tracer sur l'axe x ou y par l'analyse des commandes, il ne reconnaît pas le champ que j'essaie de tracer. Voici le RSCRIPTRscript optparse ggplot
#!/usr/bin/Rscript --vanilla
library(ggplot2)
library("optparse")
option_list = list(
make_option(c("-f", "--file"), type="character", default=NULL,
help="dataset file name", metavar="character"),
make_option(c("-o", "--out"), type="character", default="out.txt",
help="output file name [default= %default]", metavar="character"),
make_option(c("-x", "--x_axis"), type="character", default="name",
help="x axis value [default= %default]", metavar="character"),
make_option(c("-y", "--y_axis"), type="character", default="score",
help="y axis value [default= %default]", metavar="character")
);
opt_parser = OptionParser(option_list=option_list);
opt = parse_args(opt_parser);
data <- read.table(opt$file, header=TRUE)
p <- ggplot(data, aes(x=factor(opt$x_axis), opt$y_axis))
p + geom_boxplot()
Voici le fichier de données:
character name score
A 54 3.589543
B 54 3.741945
C 60 3.585833
D 60 3.655622
Voici la ligne de commande:
./boxplot.R -f "fichier.txt" -o « test .png "-x" nom "-y" score "
Ceci est la bonne solution! Je vous remercie! –
Content de l'entendre. La façon dont StackOverflow fonctionne est que vous devez «accepter» une réponse de travail (ou mieux parmi plusieurs) en cliquant sur la coche (que vous seul voyez comme affiche originale). De plus, vous pouvez également «upvoter» en cliquant sur la flèche vers le haut. Le système est basé sur le mérite afin que de meilleures réponses soient récompensées. –