I threw together some code to look at my iphone location data. There are a couple strange features to the data, and I'm eager to get my hands on a friend’s iphone4 data to see if it is the same. Timestamps are often the same — I’ll have 350 entries on some days, but only 7 or max 10 unique timestamps. On the other hand, location points themselves are pretty good.
Yup. NYC, Chicago, and I was in DC around xmas.
There are a couple wild points in NJ, and perhaps the ocean, making the bounding box too large here.
This is a couple weeks ago when I was out in Elmhurst, Queens, for the Thai Songkran festival. See my pictures (with amod gps logger geotags) here!
I flew into Chicago on New Year’s Eve. But, no points are stored from the rest of the day, only the train ride in, from O’hare apparently.
And last time I was in chicago, on one day I only went to the Maxwell Street Market for mexican food, and mostly hung out at home. Which is somewhere not far from that cloud of points.
Here’s the code.
library(RgoogleMaps) library(RSQLite) dbh <- dbConnect("SQLite", "~/Consolidated.db") Loc <- dbReadTable(dbh, "CellLocation") dbDisconnect(dbh) Loc$time <- as.POSIXct(Loc$Timestamp, origin=as.Date("2001-01-01")) Loc$date <- as.Date(Loc$time) Loc <- subset(Loc, Latitude != 0) ## Focus on a couple a specific days Days <- list( ## whole thing all=Loc ## last sunday, park, soho Sunday <- Loc[Loc$date == as.Date("2011-04-17"),], ## songkran Songkran <- Loc[Loc$date == as.Date("2011-04-10"),], ## NYE Nye <- Loc[Loc$date == as.Date("2010-12-31"),], ## Maxwell Maxwell <- Loc[Loc$date == as.Date("2011-04-04"),], ) lapply(Days, function(Df) { png(file=paste(paste(range(Df$Latitude),collapse=""), ".png",collapse="",sep=""), 640,640) bb <- qbbox(lat=range(Df$Latitude), lon=range(Df$Longitude)) ##m <- c(mean(range(Df$Latitude)), # better for 'all' plot ## mean(range(Df$Longitude))) m <- c(median(Df$Latitude), median(Df$Longitude)) zoom <- min(MaxZoom(latrange=bb$latR,lonrange=bb$lonR)) Map <- GetMap.bbox(bb$lonR, bb$latR, center=m,zoom=zoom, maptype="terrain", NEWMAP=TRUE, destfile="tempmap.jpg", RETURNIMAGE=TRUE, GRAYSCALE=TRUE) tmp <- PlotOnStaticMap(lat=Df$Latitude, lon=Df$Longitude, cex=.7,pch=20,col="#00aa0065", MyMap=Map, NEWMAP=FALSE) dev.off() })
2 comments:
Very nice, and extra points for code! By my (highly imperfect :-) count, you were already beaten by
the speedy Prof Jackman.
Interesting. Can't wait to try on my iPhone data. I wonder, without reading further on this topic elsewhere, whether the phone only sends location data when we use apps that records or uses location info. This might explain why train rides got most of your enties in Chicago, as you were using a lot of apps to kill time on the train.
Post a Comment