Skip to content
D3-friendly State Plane projections
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
README.md
stateplane.json

README.md

d3-stateplane

1983 State Plane projections in d3.geo format. These don't incorporate scale/translate, so you probably want to autoscale your projection using .fitExtent() or .fitSize() (https://github.com/d3/d3-geo#projection_fitExtent). The list is also missing Alaska Zone 1's Oblique Mercator projection.

See also: New Jersey State Plane, Ohio North State Plane, Gregor Aisch's State Plane library

NAD83 / Alabama East (EPSG:26929)

var projection = d3.geoTransverseMercator()
  .rotate([85 + 50 / 60, -30 - 30 / 60]);

NAD83 / Alabama West (EPSG:26930)

var projection = d3.geoTransverseMercator()
  .rotate([87 + 30 / 60, -30]);

NAD83 / Alaska Zone 2 (EPSG:26932)

var projection = d3.geoTransverseMercator()
  .rotate([142, -54]);

NAD83 / Alaska Zone 3 (EPSG:26933)

var projection = d3.geoTransverseMercator()
  .rotate([146, -54]);

NAD83 / Alaska Zone 4 (EPSG:26934)

var projection = d3.geoTransverseMercator()
  .rotate([150, -54]);

NAD83 / Alaska Zone 5 (EPSG:26935)

var projection = d3.geoTransverseMercator()
  .rotate([154, -54]);

NAD83 / Alaska Zone 6 (EPSG:26936)

var projection = d3.geoTransverseMercator()
  .rotate([158, -54]);

NAD83 / Alaska Zone 7 (EPSG:26937)

var projection = d3.geoTransverseMercator()
  .rotate([162, -54]);

NAD83 / Alaska Zone 8 (EPSG:26938)

var projection = d3.geoTransverseMercator()
  .rotate([166, -54]);

NAD83 / Alaska Zone 9 (EPSG:26939)

var projection = d3.geoTransverseMercator()
  .rotate([170, -54]);

NAD83 / Alaska Zone 10 (EPSG:26940)

var projection = d3.geoConicConformal()
  .parallels([51 + 50 / 60, 53 + 50 / 60])
  .rotate([176, 0]);

NAD83 / Arizona East (EPSG:26948)

var projection = d3.geoTransverseMercator()
  .rotate([110 + 10 / 60, -31]);

NAD83 / Arizona Central (EPSG:26949)

var projection = d3.geoTransverseMercator()
  .rotate([111 + 55 / 60, -31]);

NAD83 / Arizona West (EPSG:26950)

var projection = d3.geoTransverseMercator()
  .rotate([113 + 45 / 60, -31]);

NAD83 / Arkansas North (EPSG:26951)

var projection = d3.geoConicConformal()
  .parallels([34 + 56 / 60, 36 + 14 / 60])
  .rotate([92, 0]);

NAD83 / Arkansas South (EPSG:26952)

var projection = d3.geoConicConformal()
  .parallels([33 + 18 / 60, 34 + 46 / 60])
  .rotate([92, 0]);

NAD83 / California Zone 1 (EPSG:26941)

var projection = d3.geoConicConformal()
  .parallels([40, 41 + 40 / 60])
  .rotate([122, 0]);

NAD83 / California Zone 2 (EPSG:26942)

var projection = d3.geoConicConformal()
  .parallels([38 + 20 / 60, 39 + 50 / 60])
  .rotate([122, 0]);

NAD83 / California Zone 3 (EPSG:26943)

var projection = d3.geoConicConformal()
  .parallels([37 + 4 / 60, 38 + 26 / 60])
  .rotate([120 + 30 / 60, 0]);

NAD83 / California Zone 4 (EPSG:26944)

var projection = d3.geoConicConformal()
  .parallels([36, 37 + 15 / 60])
  .rotate([119, 0]);

NAD83 / California Zone 5 (EPSG:26945)

var projection = d3.geoConicConformal()
  .parallels([34 + 2 / 60, 35 + 28 / 60])
  .rotate([118, 0]);

NAD83 / California Zone 6 (EPSG:26946)

var projection = d3.geoConicConformal()
  .parallels([32 + 47 / 60, 33 + 53 / 60])
  .rotate([116 + 15 / 60, 0]);

NAD83 / Colorado North (EPSG:26953)

var projection = d3.geoConicConformal()
  .parallels([39 + 43 / 60, 40 + 47 / 60])
  .rotate([105 + 30 / 60, 0]);

NAD83 / Colorado Central (EPSG:26954)

var projection = d3.geoConicConformal()
  .parallels([38 + 27 / 60, 39 + 45 / 60])
  .rotate([105 + 30 / 60, 0]);

NAD83 / Colorado South (EPSG:26955)

var projection = d3.geoConicConformal()
  .parallels([37 + 14 / 60, 38 + 26 / 60])
  .rotate([105 + 30 / 60, 0]);

NAD83 / Connecticut (EPSG:26956)

var projection = d3.geoConicConformal()
  .parallels([41 + 12 / 60, 41 + 52 / 60])
  .rotate([72 + 45 / 60, 0]);

NAD83 / Delaware (EPSG:26957)

var projection = d3.geoTransverseMercator()
  .rotate([75 + 25 / 60, -38]);

NAD83 / Florida East (EPSG:26958)

var projection = d3.geoTransverseMercator()
  .rotate([81, -24 - 20 / 60]);

NAD83 / Florida West (EPSG:26959)

var projection = d3.geoTransverseMercator()
  .rotate([82, -24 - 20 / 60]);

NAD83 / Florida North (EPSG:26960)

var projection = d3.geoConicConformal()
  .parallels([29 + 35 / 60, 30 + 45 / 60])
  .rotate([84 + 30 / 60, 0]);

NAD83 / Georgia East (EPSG:26966)

var projection = d3.geoTransverseMercator()
  .rotate([82 + 10 / 60, -30]);

NAD83 / Georgia West (EPSG:26967)

var projection = d3.geoTransverseMercator()
  .rotate([84 + 10 / 60, -30]);

NAD83 / Hawaii Zone 1 (EPSG:26961)

var projection = d3.geoTransverseMercator()
  .rotate([155 + 30 / 60, -18 - 50 / 60]);

NAD83 / Hawaii Zone 2 (EPSG:26962)

var projection = d3.geoTransverseMercator()
  .rotate([156 + 40 / 60, -20 - 20 / 60]);

NAD83 / Hawaii Zone 3 (EPSG:26963)

var projection = d3.geoTransverseMercator()
  .rotate([158, -21 - 10 / 60]);

NAD83 / Hawaii Zone 4 (EPSG:26964)

var projection = d3.geoTransverseMercator()
  .rotate([159 + 30 / 60, -21 - 50 / 60]);

NAD83 / Hawaii Zone 5 (EPSG:26965)

var projection = d3.geoTransverseMercator()
  .rotate([160 + 10 / 60, -21 - 40 / 60]);

NAD83 / Idaho East (EPSG:26968)

var projection = d3.geoTransverseMercator()
  .rotate([112 + 10 / 60, -41 - 40 / 60]);

NAD83 / Idaho Central (EPSG:26969)

var projection = d3.geoTransverseMercator()
  .rotate([114, -41 - 40 / 60]);

NAD83 / Idaho West (EPSG:26970)

var projection = d3.geoTransverseMercator()
  .rotate([115 + 45 / 60, -41 - 40 / 60]);

NAD83 / Illinois East (EPSG:26971)

var projection = d3.geoTransverseMercator()
  .rotate([88 + 20 / 60, -36 - 40 / 60]);

NAD83 / Illinois West (EPSG:26972)

var projection = d3.geoTransverseMercator()
  .rotate([90 + 10 / 60, -36 - 40 / 60]);

NAD83 / Indiana East (EPSG:26973)

var projection = d3.geoTransverseMercator()
  .rotate([85 + 40 / 60, -37 - 30 / 60]);

NAD83 / Indiana West (EPSG:26974)

var projection = d3.geoTransverseMercator()
  .rotate([87 + 5 / 60, -37 - 30 / 60]);

NAD83 / Iowa North (EPSG:26975)

var projection = d3.geoConicConformal()
  .parallels([42 + 4 / 60, 43 + 16 / 60])
  .rotate([93 + 30 / 60, 0]);

NAD83 / Iowa South (EPSG:26976)

var projection = d3.geoConicConformal()
  .parallels([40 + 37 / 60, 41 + 47 / 60])
  .rotate([93 + 30 / 60, 0]);

NAD83 / Kansas North (EPSG:26977)

var projection = d3.geoConicConformal()
  .parallels([38 + 43 / 60, 39 + 47 / 60])
  .rotate([98, 0]);

NAD83 / Kansas South (EPSG:26978)

var projection = d3.geoConicConformal()
  .parallels([37 + 16 / 60, 38 + 34 / 60])
  .rotate([98 + 30 / 60, 0]);

NAD83 / Kentucky North (EPSG:02205)

var projection = d3.geoConicConformal()
  .parallels([37 + 58 / 60, 38 + 58 / 60])
  .rotate([84 + 15 / 60, 0]);

NAD83 / Kentucky South (EPSG:26980)

var projection = d3.geoConicConformal()
  .parallels([36 + 44 / 60, 37 + 56 / 60])
  .rotate([85 + 45 / 60, 0]);

NAD83 / Louisiana North (EPSG:26981)

var projection = d3.geoConicConformal()
  .parallels([31 + 10 / 60, 32 + 40 / 60])
  .rotate([92 + 30 / 60, 0]);

NAD83 / Louisiana South (EPSG:26982)

var projection = d3.geoConicConformal()
  .parallels([29 + 18 / 60, 30 + 42 / 60])
  .rotate([91 + 20 / 60, 0]);

NAD83 / Louisiana Offshore (EPSG:32199)

var projection = d3.geoConicConformal()
  .parallels([26 + 10 / 60, 27 + 50 / 60])
  .rotate([91 + 20 / 60, 0]);

NAD83 / Maine East (EPSG:26983)

var projection = d3.geoTransverseMercator()
  .rotate([68 + 30 / 60, -43 - 40 / 60]);

NAD83 / Maine West (EPSG:26984)

var projection = d3.geoTransverseMercator()
  .rotate([70 + 10 / 60, -42 - 50 / 60]);

NAD83 / Maryland (EPSG:26985)

var projection = d3.geoConicConformal()
  .parallels([38 + 18 / 60, 39 + 27 / 60])
  .rotate([77, 0]);

NAD83 / Massachusetts Mainland (EPSG:26986)

var projection = d3.geoConicConformal()
  .parallels([41 + 43 / 60, 42 + 41 / 60])
  .rotate([71 + 30 / 60, 0]);

NAD83 / Massachusetts Island (EPSG:26987)

var projection = d3.geoConicConformal()
  .parallels([41 + 17 / 60, 41 + 29 / 60])
  .rotate([70 + 30 / 60, 0]);

NAD83 / Michigan North (EPSG:26988)

var projection = d3.geoConicConformal()
  .parallels([45 + 29 / 60, 47 + 5 / 60])
  .rotate([87, 0]);

NAD83 / Michigan Central (EPSG:26989)

var projection = d3.geoConicConformal()
  .parallels([44 + 11 / 60, 45 + 42 / 60])
  .rotate([84 + 22 / 60, 0]);

NAD83 / Michigan South (EPSG:26990)

var projection = d3.geoConicConformal()
  .parallels([42 + 6 / 60, 43 + 40 / 60])
  .rotate([84 + 22 / 60, 0]);

NAD83 / Minnesota North (EPSG:26991)

var projection = d3.geoConicConformal()
  .parallels([47 + 2 / 60, 48 + 38 / 60])
  .rotate([93 + 6 / 60, 0]);

NAD83 / Minnesota Central (EPSG:26992)

var projection = d3.geoConicConformal()
  .parallels([45 + 37 / 60, 47 + 3 / 60])
  .rotate([94 + 15 / 60, 0]);

NAD83 / Minnesota South (EPSG:26993)

var projection = d3.geoConicConformal()
  .parallels([43 + 47 / 60, 45 + 13 / 60])
  .rotate([94, 0]);

NAD83 / Mississippi East (EPSG:26994)

var projection = d3.geoTransverseMercator()
  .rotate([88 + 50 / 60, -29 - 30 / 60]);

NAD83 / Mississippi West (EPSG:26995)

var projection = d3.geoTransverseMercator()
  .rotate([90 + 20 / 60, -29 - 30 / 60]);

NAD83 / Missouri East (EPSG:26996)

var projection = d3.geoTransverseMercator()
  .rotate([90 + 30 / 60, -35 - 50 / 60]);

NAD83 / Missouri Central (EPSG:26997)

var projection = d3.geoTransverseMercator()
  .rotate([92 + 30 / 60, -35 - 50 / 60]);

NAD83 / Missouri West (EPSG:26998)

var projection = d3.geoTransverseMercator()
  .rotate([94 + 30 / 60, -36 - 10 / 60]);

NAD83 / Montana (EPSG:32100)

var projection = d3.geoConicConformal()
  .parallels([45, 49])
  .rotate([109 + 30 / 60, 0]);

NAD83 / Nebraska (EPSG:32104)

var projection = d3.geoConicConformal()
  .parallels([40, 43])
  .rotate([100, 0]);

NAD83 / Nevada East (EPSG:32107)

var projection = d3.geoTransverseMercator()
  .rotate([115 + 35 / 60, -34 - 45 / 60]);

NAD83 / Nevada Central (EPSG:32108)

var projection = d3.geoTransverseMercator()
  .rotate([116 + 40 / 60, -34 - 45 / 60]);

NAD83 / Nevada West (EPSG:32109)

var projection = d3.geoTransverseMercator()
  .rotate([118 + 35 / 60, -34 - 45 / 60]);

NAD83 / New Hampshire (EPSG:32110)

var projection = d3.geoTransverseMercator()
  .rotate([71 + 40 / 60, -42 - 30 / 60]);

NAD83 / New Jersey (EPSG:32111)

var projection = d3.geoTransverseMercator()
  .rotate([74 + 30 / 60, -38 - 50 / 60]);

NAD83 / New Mexico East (EPSG:32112)

var projection = d3.geoTransverseMercator()
  .rotate([104 + 20 / 60, -31]);

NAD83 / New Mexico Central (EPSG:32113)

var projection = d3.geoTransverseMercator()
  .rotate([106 + 15 / 60, -31]);

NAD83 / New Mexico West (EPSG:32114)

var projection = d3.geoTransverseMercator()
  .rotate([107 + 50 / 60, -31]);

NAD83 / New York East (EPSG:32115)

var projection = d3.geoTransverseMercator()
  .rotate([74 + 30 / 60, -38 - 50 / 60]);

NAD83 / New York Central (EPSG:32116)

var projection = d3.geoTransverseMercator()
  .rotate([76 + 35 / 60, -40]);

NAD83 / New York West (EPSG:32117)

var projection = d3.geoTransverseMercator()
  .rotate([78 + 35 / 60, -40]);

NAD83 / New York Long Island (EPSG:32118)

var projection = d3.geoConicConformal()
  .parallels([40 + 40 / 60, 41 + 2 / 60])
  .rotate([74, 0]);

NAD83 / North Carolina (EPSG:32119)

var projection = d3.geoConicConformal()
  .parallels([34 + 20 / 60, 36 + 10 / 60])
  .rotate([79, 0]);

NAD83 / North Dakota North (EPSG:32120)

var projection = d3.geoConicConformal()
  .parallels([47 + 26 / 60, 48 + 44 / 60])
  .rotate([100 + 30 / 60, 0]);

NAD83 / North Dakota South (EPSG:32121)

var projection = d3.geoConicConformal()
  .parallels([46 + 11 / 60, 47 + 29 / 60])
  .rotate([100 + 30 / 60, 0]);

NAD83 / Ohio North (EPSG:32122)

var projection = d3.geoConicConformal()
  .parallels([40 + 26 / 60, 41 + 42 / 60])
  .rotate([82 + 30 / 60, 0]);

NAD83 / Ohio South (EPSG:32123)

var projection = d3.geoConicConformal()
  .parallels([38 + 44 / 60, 40 + 2 / 60])
  .rotate([82 + 30 / 60, 0]);

NAD83 / Oklahoma North (EPSG:32124)

var projection = d3.geoConicConformal()
  .parallels([35 + 34 / 60, 36 + 46 / 60])
  .rotate([98, 0]);

NAD83 / Oklahoma South (EPSG:32125)

var projection = d3.geoConicConformal()
  .parallels([33 + 56 / 60, 35 + 14 / 60])
  .rotate([98, 0]);

NAD83 / Oregon North (EPSG:32126)

var projection = d3.geoConicConformal()
  .parallels([44 + 20 / 60, 46])
  .rotate([120 + 30 / 60, 0]);

NAD83 / Oregon South (EPSG:32127)

var projection = d3.geoConicConformal()
  .parallels([42 + 20 / 60, 44])
  .rotate([120 + 30 / 60, 0]);

NAD83 / Pennsylvania North (EPSG:32128)

var projection = d3.geoConicConformal()
  .parallels([40 + 53 / 60, 41 + 57 / 60])
  .rotate([77 + 45 / 60, 0]);

NAD83 / Pennsylvania South (EPSG:32129)

var projection = d3.geoConicConformal()
  .parallels([39 + 56 / 60, 40 + 58 / 60])
  .rotate([77 + 45 / 60, 0]);

NAD83 / Rhode Island (EPSG:32130)

var projection = d3.geoTransverseMercator()
  .rotate([71 + 30 / 60, -41 - 5 / 60]);

NAD83 / South Carolina (EPSG:32133)

var projection = d3.geoConicConformal()
  .parallels([32 + 30 / 60, 34 + 50 / 60])
  .rotate([81, 0]);

NAD83 / South Dakota North (EPSG:32134)

var projection = d3.geoConicConformal()
  .parallels([44 + 25 / 60, 45 + 41 / 60])
  .rotate([100, 0]);

NAD83 / South Dakota South (EPSG:32135)

var projection = d3.geoConicConformal()
  .parallels([42 + 50 / 60, 44 + 24 / 60])
  .rotate([100 + 20 / 60, 0]);

NAD83 / Tennessee (EPSG:32136)

var projection = d3.geoConicConformal()
  .parallels([35 + 15 / 60, 36 + 25 / 60])
  .rotate([86, 0]);

NAD83 / Texas North (EPSG:32137)

var projection = d3.geoConicConformal()
  .parallels([34 + 39 / 60, 36 + 11 / 60])
  .rotate([101 + 30 / 60, 0]);

NAD83 / Texas North Central (EPSG:32138)

var projection = d3.geoConicConformal()
  .parallels([32 + 8 / 60, 33 + 58 / 60])
  .rotate([98 + 30 / 60, 0]);

NAD83 / Texas Central (EPSG:32139)

var projection = d3.geoConicConformal()
  .parallels([30 + 7 / 60, 31 + 53 / 60])
  .rotate([100 + 20 / 60, 0]);

NAD83 / Texas South Central (EPSG:32140)

var projection = d3.geoConicConformal()
  .parallels([28 + 23 / 60, 30 + 17 / 60])
  .rotate([99, 0]);

NAD83 / Texas South (EPSG:32141)

var projection = d3.geoConicConformal()
  .parallels([26 + 10 / 60, 27 + 50 / 60])
  .rotate([98 + 30 / 60, 0]);

NAD83 / Utah North (EPSG:32142)

var projection = d3.geoConicConformal()
  .parallels([40 + 43 / 60, 41 + 47 / 60])
  .rotate([111 + 30 / 60, 0]);

NAD83 / Utah Central (EPSG:32143)

var projection = d3.geoConicConformal()
  .parallels([39 + 1 / 60, 40 + 39 / 60])
  .rotate([111 + 30 / 60, 0]);

NAD83 / Utah South (EPSG:32144)

var projection = d3.geoConicConformal()
  .parallels([37 + 13 / 60, 38 + 21 / 60])
  .rotate([111 + 30 / 60, 0]);

NAD83 / Vermont (EPSG:32145)

var projection = d3.geoTransverseMercator()
  .rotate([72 + 30 / 60, -42 - 30 / 60]);

NAD83 / Virginia North (EPSG:32146)

var projection = d3.geoConicConformal()
  .parallels([38 + 2 / 60, 39 + 12 / 60])
  .rotate([78 + 30 / 60, 0]);

NAD83 / Virginia South (EPSG:32147)

var projection = d3.geoConicConformal()
  .parallels([36 + 46 / 60, 37 + 58 / 60])
  .rotate([78 + 30 / 60, 0]);

NAD83 / Washington North (EPSG:32148)

var projection = d3.geoConicConformal()
  .parallels([47 + 30 / 60, 48 + 44 / 60])
  .rotate([120 + 50 / 60, 0]);

NAD83 / Washington South (EPSG:32149)

var projection = d3.geoConicConformal()
  .parallels([45 + 50 / 60, 47 + 20 / 60])
  .rotate([120 + 30 / 60, 0]);

NAD83 / West Virginia North (EPSG:32150)

var projection = d3.geoConicConformal()
  .parallels([39, 40 + 15 / 60])
  .rotate([79 + 30 / 60, 0]);

NAD83 / West Virginia South (EPSG:32151)

var projection = d3.geoConicConformal()
  .parallels([37 + 29 / 60, 38 + 53 / 60])
  .rotate([81, 0]);

NAD83 / Wisconsin North (EPSG:32152)

var projection = d3.geoConicConformal()
  .parallels([45 + 34 / 60, 46 + 46 / 60])
  .rotate([90, 0]);

NAD83 / Wisconsin Central (EPSG:32153)

var projection = d3.geoConicConformal()
  .parallels([44 + 15 / 60, 45 + 30 / 60])
  .rotate([90, 0]);

NAD83 / Wisconsin South (EPSG:32154)

var projection = d3.geoConicConformal()
  .parallels([42 + 44 / 60, 44 + 4 / 60])
  .rotate([90, 0]);

NAD83 / Wyoming East (EPSG:32155)

var projection = d3.geoTransverseMercator()
  .rotate([105 + 10 / 60, -40 - 30 / 60]);

NAD83 / Wyoming East Central (EPSG:32156)

var projection = d3.geoTransverseMercator()
  .rotate([107 + 20 / 60, -40 - 30 / 60]);

NAD83 / Wyoming West Central (EPSG:32157)

var projection = d3.geoTransverseMercator()
  .rotate([108 + 45 / 60, -40 - 30 / 60]);

NAD83 / Wyoming West (EPSG:32158)

var projection = d3.geoTransverseMercator()
  .rotate([110 + 5 / 60, -40 - 30 / 60]);

NAD83 / Puerto Rico (EPSG:32161)

var projection = d3.geoConicConformal()
  .parallels([18 + 2 / 60, 18 + 26 / 60])
  .rotate([66 + 26 / 60, 0]);
You can’t perform that action at this time.