How to create a spherical graph with points that are latitude and longitude?
25 次查看(过去 30 天)
显示 更早的评论
I have a list of locations given in lat and long. How can I graph them in a sphere so that it looks like a globe?
0 个评论
采纳的回答
Santa Raghavan
2017-7-26
MathWorks provides a Mapping Toolbox to analyze and visualize geographic information.
0 个评论
更多回答(1 个)
Chad Greene
2017-8-2
If you don't have the Mapping Toolbox, you can always use the standard Matlab function sph2cart to represent the Earth as a sphere of radius 6371 km like this:
lat = 180*rand(500,1)-90;
lon = 360*rand(500,1);
T = 15+10*cosd(lat);
[x,y,z] = sph2cart(deg2rad(lon),deg2rad(lat),6371);
scatter3(x,y,z,40,T,'filled');
axis tight equal
cmocean thermal
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/177654/image.png)
Above I used the cmocean thermal colormap, but you can skip that line if you prefer. To put those data points in context, I'll use border data from my borders function, convert the borders to cartesian coordinates the same way as above, and plot with the scattered points:
hold on
C = load('borderdata.mat');
for k = 1:246
[xtmp,ytmp,ztmp] = sph2cart(deg2rad(C.lon{k}),deg2rad(C.lat{k}),6371);
plot3(xtmp,ytmp,ztmp,'k')
end
axis off
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/177655/image.png)
1 个评论
Chad Greene
2017-8-2
I answered a similar question here, where I also made the globe opaque and included lines of latitude and longitude.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Geographic Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!