Risposte:
Penso che tu stia cercando questo:
require(ggplot2)
df <- data.frame(x=seq(1, 1e9, length.out=100), y=sample(100))
# displays x-axis in scientific notation
p <- ggplot(data = df, aes(x=x, y=y)) + geom_line() + geom_point()
p
# displays as you require
require(scales)
p + scale_x_continuous(labels = comma)
Hai provato qualcosa come:
options(scipen=10000)
prima di tracciare?
Solo un aggiornamento a quello che ha fatto @Arun, dato che l'ho provato oggi e non ha funzionato perché era stato realizzato
+ scale_x_continuous(labels = scales::comma)
require(scales)
? Questo importa il pacchetto che contiene la comma
bilancia. Come hai scoperto, puoi anche specificare il pacchetto quando fai riferimento ad esso invece di richiederlo in anticipo.
Come soluzione più generale, puoi utilizzare scales::format_format
per rimuovere la notazione scientifica. Questo ti dà anche un sacco di controllo su come esattamente desideri che le tue etichette vengano visualizzate, al contrario di ciò scales::comma
che fa solo le separazioni con virgole degli ordini di grandezza.
Per esempio:
require(ggplot2)
require(scales)
df <- data.frame(x=seq(1, 1e9, length.out=100), y=sample(100))
# Here we define spaces as the big separator
point <- format_format(big.mark = " ", decimal.mark = ",", scientific = FALSE)
# Plot it
p <- ggplot(data = df, aes(x=x, y=y)) + geom_line() + geom_point()
p + scale_x_continuous(labels = point)
C'è una soluzione che non richiede la libreria delle bilance.
Puoi provare:
# To deactivate scientific notation on y-axis:
p + scale_y_continuous(labels = function(x) format(x, scientific = FALSE))
# To activate scientific notation on y-axis:
p + scale_y_continuous(labels = function(x) format(x, scientific = TRUE))
# To deactivate scientific notation on x-axis:
p + scale_x_continuous(labels = function(x) format(x, scientific = FALSE))
# To activate scientific notation on x-axis:
p + scale_x_continuous(labels = function(x) format(x, scientific = TRUE))
La soluzione generale più semplice per impostare la penalità che R usa per la notazione scientifica non è più alta?
cioè impostato scipen()
su un numero con cui ti senti a tuo agio.
Ad esempio, se il massimo dell'asse sui grafici è probabile che sia 100 000, l'impostazione scipen(200000)
assicurerà che R (e ggplot) utilizzerà la notazione standard per tutti i numeri inferiori a 200000 e non sarà necessario aggiungere alcuna riga alla funzione ggplot.