R changer le format de l'échelle sur l'axe des y
J'ai une parcelle qui a $-les montants et les dates sur l'axe des x et l'axe respectivement. Actuellement, les montants vont de $0 à 15 millions de dollars. Quelque chose comme ceci:
x <- rnorm(20)^2 * 1000000
plot(x)
R fait des trucs comme '1.0e+07'
au lieu de '10,000,000'
et également oriente le texte verticalement plutôt qu'horizontalement.
Mes questions sont:
1) comment puis-je obtenir le texte d'échelle pour être orientée horizontalement?
2) comment puis-je obtenir R pour utiliser 10MM
au lieu de '10,000,000'
ou '1.0e+07'
?
source d'informationauteur screechOwl | 2012-01-18
Vous devez vous connecter pour publier un commentaire.
1) Voir la
scipen
option dans?options
qui est une sanction à l'encontre de l'utilisation de la notation scientifique. Pour un meilleur contrôle, vous avez besoin de tracer l'axe à la main avec des étiquettes que vous voulez.2) Voir
las
dans?par
les contrôles à l'orientation grossièrement des étiquettes de l'axe.Pour 1):
qui donne
De tracer votre propre axe essayer
Qui donne
Où nous utilisons
pretty()
pour sélectionner assez d'emplacements pour les tiques comme R, puis ajouter un axe. Notez comment nous supprimer de l'axe de dessin dans lesplot()
appel, puis ajouter les axes et l'intrigue cadre des appels àaxis()
etbox()
.Pour 2) combinaison avec: 1) le
Qui donne
Remarquez comment nous utilisons
las
dans leplot()
appel, et nous avons besoin de créer un peu de marge supplémentaire d'espace pour accueillir les étiquettes de graduation. Nous avons aussi besoin de tracer l'étiquette à la main sinon R va le coller dans parmi les étiquettes de graduation.Pour l'personnalisé des étiquettes de l'axe, ajouter le
las = 1
à laaxis()
appel:Qui produit
Utilisation
axis
avec des étiquettes personnalisées. Tout d'abord, diviser vos données par 1 million de dollars. Et puis créer une série avec le MM notation à l'aide de collage()Le texte est maintenant à l'horizontale. Mais si vous rencontrez un problème d'utilisation, las=1 pour forcer les étiquettes à l'horizontale.