Come si ottiene le etichette sul vostro asse dipende dal sistema tracciato utilizzato (base, ggplot2 o lattice) È possibile utilizzare le funzioni da scales
pacchetto per formattare i numeri degli assi:
library(scales)
x <- 10^(1:10)
scientific_format(1)(x)
[1] "1e+01" "1e+02" "1e+03" "1e+04" "1e+05" "1e+06" "1e+07" "1e+08" "1e+09" "1e+10"
Ecco un esempio utilizzando ggplot2
:
library(ggplot2)
dat <- data.frame(x = c(102, 258, 2314),
y = c(482563, 922167, 4462665))
qplot(data=dat,x=x,y=y) +
scale_y_continuous(label=scientific_format(digits=1))+
theme(axis.text.y =element_text(size=50))
EDIT Il PO ha una specifica esigenza. Ecco alcune idee che ho usato qui per realizzare questo:
- È possibile personalizzare le etichette di trama utilizzando la funzione
axis
.
- Usa
mtext
per mettere il testo nella regione trama esterna
- usare l'espressione di trarre profitto dalle caratteristiche plotmath ...
y <- c(102, 258, 2314)
x <- c(482563, 922167, 4462665)
plot(x,y,ylab='',yaxt='n')
mtext(expression(10^3),adj=0,padj=-1,outer=FALSE)
axis(side=2,at=y,labels=round(y/1000,2))
Grazie. Sarebbe meglio usare le espressioni http://stackoverflow.com/questions/4302367/concatenate-strings-and-expressions-in-a-plot-title – Yang