FAQ

Q: Why are the pings I add from the Pings plugin in the wrong place?

A: Like D3 on which it is based, Planetary.js accepts coordinates with the longitudinal coordinate first. You can set the latitudeFirst option in the plugin configuration to change this. There is some additional discussion on the subject in the Pings plugin documentation.

Q: Why can't I access my DOM element?

A: Planetary.js provides no methods for DOM access or for waiting for the DOM ready event; you'll need to handle this on your own or use a third-party library.

Q: Why doesn't my canvas element work with Planetary.js?

A: Planetary.js asks for raw DOM elements; if you have an element wrapped with jQuery, D3, or a similar library, you'll need to unwrap it to pass to your planet's draw method.

Q: Why can't I load the world-110m.json file with the TopoJSON plugin?

A: After checking to make sure you've specified the correct path to the file in the plugin's configuration options, ensure that you're viewing your page over HTTP. Your browser won't be able to make the necessary Ajax request to load the file if you're just viewing the page from your filesystem.

Q: How do I manipulate my globe?

A: The planet object has methods and properties for manipulating the globe; most notable is the projection property. See the Planet API for more information.

Q: I'm getting "Cannot read property 'geo' of undefined" or "Cannot call method 'feature' of undefined."

A: Ensure you're requiring the D3 and TopoJSON libraries before Planetary.js.