Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Frontend GIS
  3. d3-geo

d3-geo

NOASSERTIONJavaScriptv3.1.1

A JavaScript library for geographic projections, spherical shapes, and spherical trigonometry using GeoJSON.

Visit WebsiteGitHubGitHub
1.1k stars159 forks0 contributors

What is d3-geo?

d3-geo is a core module of D3.js that provides tools for working with geographic data in JavaScript. It enables the creation of interactive maps and visualizations by supporting a wide variety of map projections and spherical geometry operations. The library is essential for data visualization projects that require accurate geographic representation and transformation.

Target Audience

Data visualization developers and GIS professionals building interactive maps or geographic data visualizations in JavaScript, particularly those using the D3.js ecosystem.

Value Proposition

Developers choose d3-geo for its mathematical accuracy in spherical geometry, extensive support for common and unusual map projections, and seamless integration with GeoJSON standards, offering flexibility and precision in geographic visualization.

Overview

Geographic projections, spherical shapes and spherical trigonometry.

Use Cases

Best For

  • Creating interactive web-based maps with custom projections
  • Visualizing geographic data using spherical geometry for accuracy
  • Transforming and manipulating GeoJSON data for mapping applications
  • Implementing unusual or specialized map projections in data visualizations
  • Building data visualization projects that require precise geographic representation
  • Rotating map aspects and orientations for customized map displays

Not Ideal For

  • Projects requiring simple, embeddable maps with minimal code and pre-built interactivity
  • Applications needing real-time rendering of massive geographic datasets without heavy client-side processing
  • Teams focused on routing or navigation without custom visualization needs, as it lacks built-in GIS functionality
  • Developers unfamiliar with D3.js or GeoJSON seeking a quick, out-of-the-box mapping solution

Pros & Cons

Pros

GeoJSON Standard Compliance

Uses spherical GeoJSON as specified in the README, ensuring seamless integration with standard geographic data formats and tools.

Extensive Projection Support

Supports a wide variety of common and unusual map projections, as highlighted in the documentation and resources, enabling flexible visualization.

Spherical Geometry Accuracy

Applies spherical geometry for precise calculations on Earth's surface, essential for accurate geographic representations and transformations.

Flexible Aspect Rotation

Allows rotating geometry to apply any aspect to any projection, providing fine-grained control over map orientation as mentioned in the README.

Cons

Steep Learning Curve

Requires familiarity with the D3.js ecosystem and GeoJSON standards, making it less accessible for quick projects or beginners.

Performance Overhead

Can be computationally intensive for large datasets or complex projections, potentially impacting real-time visualizations on slower devices.

Limited Built-in Interactivity

Lacks out-of-the-box features like panning or zooming; additional D3 modules or custom code are needed for full interactive maps.

External Dependency for Unusual Projections

As noted in the README, unusual projections require the separate d3-geo-projection module, adding complexity to setup and maintenance.

Frequently Asked Questions

Quick Stats

Stars1,094
Forks159
Contributors0
Open Issues28
Last commit1 year ago
CreatedSince 2016

Tags

#cartography#geojson#javascript-library#data-visualization#spherical-geometry#geographic-visualization#map-projections

Built With

J
JavaScript

Links & Resources

Website

Included in

Frontend GIS675
Auto-fetched 9 hours ago

Related Projects

LeafletLeaflet

🍃 JavaScript library for mobile-friendly interactive maps 🇺🇦

Stars44,954
Forks6,117
Last commit12 days ago
Cesium.jsCesium.js

An open-source JavaScript library for world-class 3D globes and maps :earth_americas:

Stars15,225
Forks3,788
Last commit20 hours ago
Deck.GLDeck.GL

WebGL2 powered visualization framework

Stars14,137
Forks2,217
Last commit19 hours ago
OpenLayersOpenLayers

OpenLayers

Stars12,422
Forks3,169
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub