
Tengo datos en un sistema Linux, alrededor de 44 000 puntos de datos, y me gustaría hacer un diagrama de dispersión. La trama debe guardarse para poder mostrarla en un sitio web (¿JPG?).
Algunos otros parámetros:
Eje X: un día por tick, máximo 31 días en total
Eje Y: Número entero 0-100, marcas cada 10
Diagrama de dispersión…..NO dibuje líneas entre puntos.
Cada punto de datos se parece a:
20/10/2010 23:45:22,57
Me gustaría incluir etiquetas para los ejes X, Y
Me gustaría incluir un título.
Me gustaría que los días aparecieran como 10/20 debajo de cada punto X o simplemente como el número del día.
Cualquier idea sobre qué programa(s) debería considerar....con suerte, gratis. Puedo elegir entre los sistemas operativos Linux, Centos 5.5, Fedora 13, Suse 11 SP1.
Gracias por su ayuda y consideración.
Respuesta1
parcela gnuplotdebe encargarse de sus necesidades. Puede renderizarse en varios lienzos, como PNG y SVG.
Respuesta2
Rcon el excelente trabajo de Hadley Wickhamggplot2
biblioteca. La biblioteca de gráficos incorporada es completamente adecuada, pero ggplot2
tiene valores predeterminados hermosos y sensatos.
después de instalar R para instalar ggplot2:install.packages("ggplot2")
Suponiendo que sus datos tengan la forma:
date_time,value
10/20/2010 23:45:22,57
10/30/2010 23:45:22,102
Todo tu script en R se vería así:
mydata <- read.csv("path/to/csv/data.csv", sep=",",
header = TRUE, stringsAsFactors = FALSE)
mydata$date_time <- as.POSIXct(
strptime(mydata$date_time, "%m/%d/%Y %H:%M:%S")) #turns your dates
#into POSIX time objects
head(mydata) #just see that it looks good
library(ggplot2)
p <- ggplot(mydata, aes(date_time, value)) #make a ggplot2 plot object
p + geom_point() + ylab('Y label goes here') + #add points, ylabel, xlabel and a title
xlab("Date") + opts(title = "Snappy Title goes here")
Aquí hay uno que hice mientras respondía esta misión usando elDatos del hidrograma del USGS para Elwha