meercart: HeatMap für DriveNow
Die Positionsdaten von drive now zeiltich sammeln und dann auswerten
Frontend
- JS mit Overlay eines tiles aus dem Backend
- OSM vs. GMAPS
Backend
Calc Lat. & Long. to pixel HeatMapClass Orthodrome - Abstand zwischen zwei Erdkoordinaten Gutes Beispiel für Couch DB ReReduce
DB
- https://umija.iriscouch.com/meercart/ z.B. Daten vom 2012-04-11 21:21
Der tile-get-view holt anhand des 'key' mit den Parametern ''Tile für Zoom:13, X:2687, Y:306;'' [http://umija.iriscouch.com/meercart/_design/dev/_view/get_zxyr?limit=99&key=%5B13%2C2687%2C306%5D)
Jetzt auch mit Reduce und natürlich auch ReReduce
Daten einsammeln
per cron alle 20 Minuten
file
seit mitte April als file
aber
{CODE()}
curl -s https://www.drive-now.com/php/metropolis/vehicle_filter | curl -X PUT https://umija:xxxxxxx@umija.iriscouch.com/meercart/date +\%F_\%H_\%M
-d @-
{CODE}
udn das zu couch ~/drive-now$ for f in ls drivenow_2012-05-15*
; do var=${f:9:13}_${f:23:2}; curl -X PUT https://umija:XXXXXXXXXXXXXX@umija.iriscouch.com/meercart/$var -d @$f ; done
Zeitaggregation
Stündliche kachel: http://meercart.umija.org/backend/CreatHeatMaphora.php?hora=12&zoom=13&x=4360&y=2841 leider noch nicht gecached, daher wird das bild nicht immer erzeugt
Example
mit http://meercart.umija.org/frontend/tilesoverlay.html {DIV(id="mapdiv", width=512px, height=512px)}Loading ...{DIV} {JS(file="http://maplib.khtml.org/khtml.maplib/khtml_all.js")}{JS} {JS()} //choose map render libary var mr=new Object(khtml.maplib);
//initialize the map
var map=new mr.Map(document.getElementById("mapdiv"));
var p=new mr.LatLng(48.15351, 11.56072);
map.centerAndZoom(p,13);
var zoominger=new khtml.maplib.ui.Zoombar();
map.addOverlay(zoominger);
ov=map.addTilesOverlay({
maxzoom:18,
minzoom:4,
src:function(x,y,z){
return "http://meercart.umija.org/backend/CreatHeatMap.php?zoom="+z+"&x="+x+"&y="+y;
},
copyright:"openseamap"
})
{JS}
Das Ganze lässt sich auch mit Toner Map realisieren. Karte: [http://maps.stamen.com] JS Lib: [http://leaflet.cloudmade.com/reference.html#imageoverlay]
Auswertungsmöglichkeiten
Bewegung
Anhand der Daten lässt sich die Startkoordinate und die Zielkoordinate eines Mietvorganges ermitteln. Diese zwei Koordinaten als Vektor dargestellt stellen dann den Bewegungspfeil dar. Anhand dieser Information lassen sich die belibten Zielpunkte bzw. beliebten Fahrten ermitteln.
SourceCode
Ist per GIT einzusehen und natürlich auch zu verändern [https://gitorious.org/meercart/meercart].
Name
was hältst du von * carsharingradar * Meerkat, * mobileMeerkat * carmeerkat * ridemeerkat * meerkat2ride --> meercart.umija.org A 88.80.195.198
Ideen
Eine statische Seite mit haml Bibliothek rausschicken und den Rest per Google ImageService rendern lassen. Noch mehr haml Info.