tic - tecnologias administrativas pdf
Aumentar el nĂºmero de tics de eje (4)
Estoy generando gráficos para algunos datos, pero el número de tics es demasiado pequeño, necesito más precisión en la lectura.
¿Hay alguna forma de aumentar el número de tics de eje en ggplot2?
Sé que puedo decirle a ggplot que use un vector como tics de eje, pero lo que quiero es aumentar el número de tics para todos los datos. En otras palabras, quiero que el número de tilde se calcule a partir de los datos.
Posiblemente ggplot haga esto internamente con algún algoritmo, pero no pude encontrar cómo lo hace, para cambiar de acuerdo con lo que quiero.
Adicionalmente,
ggplot(dat, aes(x,y)) +
geom_point() +
scale_x_continuous(breaks = seq(min(dat$x), max(dat$x), by = 0.05))
Funciona para datos de eje x escalados o discretos (es decir, no es necesario redondear).
Puede proporcionar un argumento de función para scale
, y ggplot usará esa función para calcular las ubicaciones de ticks.
library(ggplot2)
dat <- data.frame(x = rnorm(100), y = rnorm(100))
number_ticks <- function(n) {function(limits) pretty(limits, n)}
ggplot(dat, aes(x,y)) +
geom_point() +
scale_x_continuous(breaks=number_ticks(10)) +
scale_y_continuous(breaks=number_ticks(10))
Puede usar la función pretty
incorporada:
ggplot(dat, aes(x,y)) + geom_point() +
scale_x_continuous(breaks = pretty(dat$x, n = 10)) +
scale_y_continuous(breaks = pretty(dat$y, n = 10))
Según el comentario de Daniel Krizian , también puede usar la función pretty_breaks
de la biblioteca de scales
, que se importa automáticamente:
ggplot(dat, aes(x,y)) + geom_point() +
scale_x_continuous(breaks = scales::pretty_breaks(n = 10)) +
scale_y_continuous(breaks = scales::pretty_breaks(n = 10))
Todo lo que tienes que hacer es insertar la cantidad de tics deseada.
Puede anular las escalas predeterminadas de scale_x_continuous
modificando scale_x_continuous
y / o scale_y_continuous
. Por ejemplo:
library(ggplot2)
dat <- data.frame(x = rnorm(100), y = rnorm(100))
ggplot(dat, aes(x,y)) +
geom_point()
Te da esto:
Y anular las escalas puede darte algo como esto:
ggplot(dat, aes(x,y)) +
geom_point() +
scale_x_continuous(breaks = round(seq(min(dat$x), max(dat$x), by = 0.5),1)) +
scale_y_continuous(breaks = round(seq(min(dat$y), max(dat$y), by = 0.5),1))
Si quiere simplemente "acercar" una parte específica de un gráfico, mire xlim()
y ylim()
respectivamente. here también se puede encontrar una buena idea para comprender los otros argumentos.