Loading - please wait...

This page requires a reasonably modern HTML5 browser
with both Javascript and WebGL enabled.

If this message is not soon replaced by an interactive world map,
then it is likely that your browser does not support this web app.
Check your JavaScript Console for specific error messages.

0.00, 0.00


Diagram Size





Time Zone



This is a small web app I've been wanting to do for some time. Obviously this is very much inspired by others such as SunCalc and SunEarthTools. However I have tried to make a more interactve, configurable and mobile-friendly version with better time zone selection.

To move the sun-path diagram around, simply click and drag the location marker within the world map. It should be fast enough even on a phone or tablet to update in close to real time. You can also double-click or double-tap anywhere within the map to set the position expicitly.


If you intend using this for a particular project or in a demonstration, you can save the settings for each example and then simply load or drag/drop the file anywhere in the browser page whenever you need. You can also manually edit all the various app settings using the Edit Settings as JSON... item in the menu and then either copy/paste them into a text file or store the new settings as the default start-up values using the same menu.

© Dr. Andrew J. Marsh, 2014.

Keyboard Modifiers

The Shift and Ctrl/Meta keys are used pretty extensively to modify interactive data entry. This applies to all increment buttons, scroll wheel motion, slider controls and input elements.

Shift Key:
Increases input to larger values, usually by ten times or significantly larger increments such as 1 month for dates and 1 hour for times.
Ctrl or Meta Key:
Decreases input to smaller values, usually by one tenth or the smallest reasonable increment such as 1 day for dates or 1 minute for times.

NOTE: You can use the scroll wheel to edit a data value when hovering over any slider, numeric input or even table rows that indicate their editibility.


This page uses the following frameworks/components:

Bootstrap  v3.3.2
Copyright © 2011-2015 Twitter, Inc. - github.com/twbs,
http://getbootstrap.com/   (LICENSE)

Bootstrap-popover-x  v1.4.0
Copyright © 2014, Kartik Visweswaran, Krajee.com,
https://github.com/kartik-v/bootstrap-popover-x   (LICENSE)

Copyright © 2010-2015, Michael Bostock
http://d3js.org   (LICENSE)

Google Maps API  v3
Copyright © 2015 Google Inc. - http://google.com,
https://developers.google.com/maps/   (Terms of Service)

jQuery  v1.11.2
Copyright © jQuery Foundation and other contributors,
https://jquery.com/   (LICENSE)

JSON Editor
Copyright © 2015 Jos de Jong - github.com/josdejong
https://github.com/josdejong/jsoneditor/   (LICENSE)

Copyright © 2011 Bruno Jouhier - github.com/Sage
https://github.com/Sage/jsurl/   (LICENSE)

KnockoutJS  v3.2.0
Copyright © Steven Sanderson and the Knockout.js team,
http://knockoutjs.com/   (LICENSE)

Knockstrap  v1.2.0
Copyright © 2013 Artem Stepanyuk - github.com/faulknercs,
http://faulknercs.github.io/Knockstrap/   (LICENSE)

Copyright © 2014 Federico Zivolo - github.com/FezVrasta
http://fezvrasta.github.io/snackbarjs/   (LICENSE)