Inverser l'échelle de l'axe des x dans un complot
J'ai créé une parcelle de terrain dans R et ma propre axes x et y de. Je voudrais l'axe des x pour être affichés dans un ordre inverse (1-0 par -.02). J'ai lu de nombreux messages et les sujets qui propose l'utilisation de xlim et à l'inverse de gamme mais je n'arrive pas à le faire fonctionner. Une fois tracée, je suis aussi convertir les étiquettes d'axes à des pourcentages en multipliant le résultat par 100 (comme vous pourrez le voir dans le code). Voici ce que j'ai à ce jour;
plot(roc.val, xlab = "Specificity (%)", ylab = "Sensitivity (%)", axes = FALSE)
axis(2, at = seq(0,1,by=.2), labels = paste(100*seq(0,1, by=.2)), tick = TRUE)
axis(1, at = seq(0,1,by=.2), labels = paste(100*seq(0,1, by=.2)), tick = TRUE)
Comment puis-je inverser l'axe des x de l'échelle, de sorte que les valeurs de commencer à 100 et termine à 0 avec des incréments de 20?
OriginalL'auteur Courtney | 2016-06-16
Vous devez vous connecter pour publier un commentaire.
Je pense que cela crée un complot dans lequel l'axe des y est en ordre inverse:
Cela supprime les valeurs de l'axe:
Je suppose que vous pouvez assigner les valeurs de l'axe que vous voulez, puis avec une variation de vos lignes:
OriginalL'auteur Mark Miller
OriginalL'auteur Adam Quek
L'adaptation de Mark Miller, en réponse à résoudre un problème semblable (j'ai trouvé ce sujet par la recherche de la solution) et j'ai trouvé une variation de sa solution dans https://tolstoy.newcastle.edu.au/R/help/05/03/0342.html.
Fondamentalement, si vous voulez inverser l'axe des abscisses les valeurs dans l'intrigue, au lieu d'utiliser ylim=rev(range(y)), vous pouvez utiliser xlim=rev(c(-4,4)).
plot1
Et si vous voulez garder l'axe des abscisses les valeurs dans l'ordre, vous pouvez utiliser ceci:
plot2
Je poste cette solution car j'ai besoin de quelque chose de très simple à résoudre mon problème. Et la solution qu'elle a besoin de l'intrigue avec l'axe des X de la valeur dans l'ordre correct (et pas inversé).
OriginalL'auteur Eduardo Alvim
Première, découvrez le
ggplot2
bibliothèque pour faire de belles et extensible graphiques. Il fait partie de la Tidyverse approche de la R et un gamechanger si vous n'avez pas été exposé.Par exemple, pour résoudre votre problème à l'aide de ggplot, il suffit d'ajouter le terme
scale_x_reverse()
à votre graphique.Voir: http://ggplot.yhathq.com/docs/scale_x_reverse.html
OriginalL'auteur Daniel