How can I plot Earth (wgs84 Ellipsoid)?

50 views (last 30 days)
I have tried
[x,y,z] = wgs84Ellipsoid('meters');
figure
surf(x,y,z)
axis equal
However,
[x,y,z] = wgs84Ellipsoid('meters');
is incorrect ("Too many output arguments")
  2 Comments
Geoff Hayes
Geoff Hayes on 27 Nov 2017
Matthes - according to https://www.mathworks.com/help/map/ref/wgs84ellipsoid.html the function wgs84ellipsoid returns a referenceEllipsoid object and so the error message makes sense since only one output parameter is possible
E = wgs84ellipsoid('meters');
So that explains the error message. As for trying to draw/plot this, I'm not sure how you would do that (or if it is even possible).
Matthes Müller
Matthes Müller on 30 Nov 2017
Alright, thanks a lot anyway!

Sign in to comment.

Accepted Answer

Amy Haskins
Amy Haskins on 12 Dec 2017
To just get a sense for the shape of the ellipsoid, you could use the values from the wgs84ellipsoid in conjunction with MATLAB's ellipsoid function as follows:
ellipsoid(0,0,0,E.SemimajorAxis, E.SemimajorAxis, E.SemiminorAxis)
Alternatively, if you want a 3D globe, you could follow the doc example here:
https://www.mathworks.com/help/map/examples/plotting-a-3-d-dome-as-a-mesh-over-a-globe.html
Replacing the grs80 ellipsoid with the one returned by wgs84Ellipsoid.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!