Estoy en el proceso de crear una curva epidémica (histograma del número de casos de una enfermedad por día) usando R, y estoy luchando un poco formateando el eje x .Formateo del eje x del histograma al trabajar con fechas usando R
Soy consciente de que ggplot da muy buenos gráficos y ejes fácilmente manipulables (Understanding dates and plotting a histogram with ggplot2 in R), pero en este caso yo prefiero usar el comando hist()
, porque yo estoy describiendo 2 patrones diferentes al mismo tiempo, como a continuación (I Don 't cree que puede hacer algo similar en ggplot):
el problema aquí es que el eje x no comienza en el primer caso, tiene demasiadas marcas de graduación, y me gustaría ser capaz de tener un marcador de fecha sistemática, ej. cada 7 días, o cada 1er. del mes.
Los datos se almacenan en una base de datos (dat.geo) como una fila por cada caso sospechoso, con información sobre la fecha de inicio y la zona residencial (ya sea negro o blanco en histograma), de la siguiente manera:
> head(dat.geo)
number age sex suburb Date_of_Onset
1 1 12 F x 2011-10-11
2 2 28 M x 2011-10-10
3 3 15 F x 2011-10-12
4 4 12 M y 2011-10-25
5 5 10 F x 2011-10-15
6 6 9 M y 2011-10-20
aquí está mi código:
pdf(file='1.epi.curve.pdf')
hist(dat.geo$Date_of_Onset[(dat.geo$suburb=="x")], "days",
format = "%d %b %y", freq=T, col=rgb(0,0,0,1), axes=T, main="", add=T)
hist(dat.geo$Date_of_Onset[(dat.geo$suburb=="y")], "days",
format = "%d %b %y", freq=T, main="", col=rgb(1,1,1,.6), add=T, axes=F)
dev.off()
he intentado suprimir el eje y la adición de un ser manipulado posteriormente utilizando este código
axis(1, labels=T)
axis(2)
pero esto es lo que me pasa (y no tengo ni idea de cómo manipular eso):
Su ayuda es muy apreciada!
gracias
Use 'axis (1, at = x, labels = y)' donde 'x' son las coordenadas de los ticks (vector numérico) y' y' son las etiquetas de ticks (vector de caracteres). – Backlin
Puede usar 'position =" identity "' en 'ggplot' para superponer las barras – James