-
Notifications
You must be signed in to change notification settings - Fork 202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Cupola projection #209
Comments
Projection invented and developed by @WeiaR. A comment by the author in the PROJ issue gives the following formula:
where (u,v) = (lat, lon) in radians. https://observablehq.com/@fil/cupola-projection The inverse projection is obtained by the Newton-Raphson 2D method (already developed in d3-geo-projection). |
Nearly OK. The only problem is the borders of the map. The central meridian is 11.023 degrees (east), this is built in in the equations. This leads to |
Thank you @WeiaR for the close look (and for the magnificent projection!). I've just fixed my code, as well as the image above. I'll probably tweak the implementation a bit to make it more "d3-friendly" (we prefer antimeridian clipping at -180, 180, and rotating the aspect). But it won't change the map. |
The previous picture had more problems. I'll look at the new one. |
It's perfect! I understand preferences for round numbers, but one purpose of my project was to see what happens when common preferences were left out. I started with the most compact ordening of all continents, which is a big circle having its center in Gabon. Accidentally the borders of the map then are so close to the international date line that I took that as boundary, more precise where the date line is between Siberian and Alaskan isles (Diomede and Big Diomede). When cartographers very much prefer round numbers I could look at it, how much worse it will become. But all parameters than change and so the equations! |
@WeiaR Nice work! One question I have when reading the paper: was it your original expectation/intention to have a shape pulled together at the north pole and stretched out at the south pole? In retrospect it is what someone might expect to happen if minimax optimizing to preserve the shapes of Greenland, New Zealand, Chukotka, etc. while entirely ignoring Antarctica, but I can also imagine the resulting optimized shape being a surprise at first. |
Thanks. My only aim was to make an asymmetric projection because land masses aren't equally spread on the globe.. I had no idea what could be the outcome. As you can see on my website figure 9, very different forms are also possible. It in fact isn't optimizing, the criterion of making the worst points on land as good as possible is finding a solution to a set of equations. Rather nasty equations, I only could do it numerically. The solution has 4 equally good worst points. All other points on the continents have less distortion. |
This kind of optimization of the Chebyshev distance (a.k.a. L∞ distance) is commonly seen with conformal projections (optimizing for minimal worst-case scale variation), e.g. the Eisenlohr projection is the "optimal" conformal projection in this sense of the globe with a cut along one meridian. Hammond contracted physicist Mitchell Feigenbaum to make a whole set of L∞-optimized conformal projections of various countries and continents for their 1992 world atlas. For a conformal projection it can be proven that the L∞-optimal projection of a particular contiguous region of the sphere will have constant maximal scale along the boundary. For equal-area projections I don't think an L∞ optimized map in general has constant shear all along the boundary, but it should still tend toward having similar worst-case shear at various points along the chosen boundary because distortion can be reduced in one place by increasing it somewhere else, so an L∞ optimization method will tend to reduce the worst-case distortion on the map by spreading it around, and only stop when there’s no way to perturb the parameters in a way that simultaneously reduces distortion at all of the most-currently-distorted points. I’d be curious to see what happened if the same projection family were optimized using a least squares (L2 distance) criterion instead, perhaps with continental points weighted by population. |
I started with least squares, wanted to summate them over the continents, but then thought: power 2 is arbitrary, why not power 3 or 4? This leaded to 'power infinite', so only look at the worst points. |
The biggest reason to use least squares (L2 distance) is that it is the most mathematically/computationally inexpensive and convenient. L∞ distance (worst-case error) and L1 distance (sum of the absolute values of all errors, sometimes called "taxicab distance") are also commonly used. L1 distance is very sensitive to small errors over a large number of points but barely penalizes high-error outliers; L∞ distance very harshly penalizes high-error outliers but is completely insensitive to marginal changes to errors everywhere else. L2 distance is in between. |
Just adding a visual reference for those following along: (source) |
O I did ;-)
Least squares were my first idea, of course, but I moved towards a more radical approach. With least squares all locations count and the central parts will have influence. There are enough projection with a good centre, I was curious which would be the results when no region in before has an advantage.
Greetz, Weia
… On 7 May 2021, at 20:24, Jacob Rus ***@***.***> wrote:
The biggest reason to use least squares (L2 distance) is that it is the most mathematically/computationally inexpensive and convenient. L∞ distance (worst-case error) and L1 distance (sum of the absolute values of all errors, sometimes called "taxicab distance") are also commonly used. L1 distance is very sensitive to small errors over a large number of points but barely penalizes high-error outliers; L∞ distance very harshly penalizes high-error outliers but is completely insensitive to marginal changes to errors everywhere else. L2 distance is in between.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#209 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AT55H75GNFWVN5FYTCPCQATTMQV7JANCNFSM44ELK46A>.
|
Did I answer this mail?
Greetz!
Weia
… On 6 May 2021, at 20:29, Jacob Rus ***@***.***> wrote:
@WeiaR <https://github.com/WeiaR> Nice work!
One question I have when reading the paper: was it your original expectation/intention to have a shape pulled together at the north pole and stretched out at the south pole? In retrospect it is what someone might expect to happen if minimax optimizing to preserve the shapes of Greenland, New Zealand, Chukotka, etc. while entirely ignoring Antarctica, but I can also imagine the resulting optimized shape being a surprise at first.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#209 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AT55H7552BJFUHO6YWCSZRDTMLNXFANCNFSM44ELK46A>.
|
A beautiful new world map equal-area projection created by Weia Reinboud : https://www.tandfonline.com/doi/full/10.1080/23729333.2020.1862962
All the info rmationI found :
The text was updated successfully, but these errors were encountered: