Skip to content
mbostock edited this page Dec 18, 2012 · 50 revisions

WikiRelease Notes3.0

The page covers new features in 3.0; see Upgrading to 3.0 for how to migrate from 2.x to 3.0.

Transitions

  • immediate evaluation of transition.attr, transition.style, etc.
  • simplify chained transitions with transition.transition rather than end events
  • reselection of transitions (e.g., customize d3.svg.axis transitions)

Requests

  • progress events
  • abort
  • multiple listeners
  • customize method & headers, post data
  • CORS support for IE9
  • standard Node-style callbacks, compatible with Queue.js

Geo

d3.geo.projection

  • antimeridian cutting
  • projection.clipAngle - robust circle clipping (polar distortion, )
  • projection.precision - adaptive supersampling for projections
  • projection.rotate - three-axis rotation, world tour
  • raw projections (e.g., d3.geo.stereographic.raw) - easier composition
  • d3.geo.projectionMutator - extensible design for new projections
  • support for right hand rule
  • sphere rendering via new GeoJSON "Sphere" type
  • speed!

d3.geo.stream

  • direct to canvas rendering (path.context)!
  • streaming geometry transformations (e.g., simplification)
  • less memory overhead during projection operations

Utilities

  • d3.geo.graticule - display grid lines
  • d3.geo.circle - small and great circle rendering (like Tissot's indicatrix)
  • d3.geo.interpolate - interpolate along great arcs
  • d3.geo.{area,centroid,bounds} - spherical area, centroid and bounds
  • path.{area,centroid,bounds} - observes clipping & resampling

Extended Projections

  • d3.geo.aitoff - Aitoff
  • d3.geo.albers - Albers equal-area conic
  • d3.geo.august - August conformal
  • d3.geo.azimuthalEqualArea - Lambert azimuthal equal-area
  • d3.geo.azimuthalEquidistant - Azimuthal equidistant
  • d3.geo.bonne - Bonne
  • d3.geo.collignon - Collignon
  • d3.geo.conicConformal - Lambert conformal conic
  • d3.geo.conicEquidistant - Conic equidistant
  • d3.geo.cylindricalEqualArea - Cylindrical equal-area
  • d3.geo.eckert1 - Eckert I
  • d3.geo.eckert2 - Eckert II
  • d3.geo.eckert3 - Eckert III
  • d3.geo.eckert4 - Eckert IV
  • d3.geo.eckert5 - Eckert V
  • d3.geo.eckert6 - Eckert VI
  • d3.geo.eisenlohr - Eisenlohr conformal
  • d3.geo.equirectangular - Equirectangular (Plate Carrée)
  • d3.geo.gnomonic - Gnomonic
  • d3.geo.gringorten - Gringorten
  • d3.geo.guyou - Guyou hemisphere-in-a-square
  • d3.geo.hammer - Hammer
  • d3.geo.homolosine - Goode Homolosine
  • d3.geo.kavrayskiy7 - Kavrayskiy VII
  • d3.geo.lagrange - Lagrange conformal
  • d3.geo.larrivee - Larrivée
  • d3.geo.mercator - Mercator
  • d3.geo.miller - Miller
  • d3.geo.mollweide - Mollweide
  • d3.geo.nellHammer - Nell–Hammer
  • d3.geo.orthographic - Orthographic
  • d3.geo.polyconic - Polyconic
  • d3.geo.robinson - Robinson
  • d3.geo.satellite - Satellite (tilted perpsective)
  • d3.geo.sinusoidal - Sinusoidal
  • d3.geo.sinuMollweide - Sinu-Mollweide
  • d3.geo.stereographic - Stereographic
  • d3.geo.vanDerGrinten - Van der Grinten
  • d3.geo.wagner6 - Wagner VI
  • d3.geo.winkel3 - Winkel Tripel

Quadtree Tiles

  • d3.geo.tile

TopoJSON

Replacement for GeoJSON that typically provides 80-90% smaller file sizes. Also encodes topology, enabling topology-preserving shape simplification (à la MapShaper), map coloring, cartograms, boundary mesh computation, and more!

Other

  • d3.shuffle - Fisher–Yates shuffle
  • d3.format and d3.time.format - align, fill and localization support
  • d3.layout.treemap - slice and dice
  • moved to bl.ocks.org for easier browsing & forking
  • various bug fixes and performance improvements
  • d3.hexbin plugin - hexagonal binning

And more!

Clone this wiki locally