主要内容

本页采用了机器翻译。点击此处可查看英文原文。

在 NASA 地图中可视化路径

此示例展示如何在 NASA 提供的栅格地图上可视化存储在 ThingSpeak™ 通道源中的纬度和经度数据。您可以从 Web 地图服务 (WMS) 中检索栅格地图并绘制玛丽马士基号船行进的路径。

读取数据

ThingSpeak 通道 73734 存储了 Mary Maersk 号船的位置数据。使用 thingSpeakRead 函数读取过去 10 天的数据。

data = thingSpeakRead(73734,'DateRange',...
    [datetime('now')-caldays(10),datetime('now')],'outputFormat','table');

处理原始数据

在地图上绘制原始纬度和经度数据之前对其进行处理。将纬度和经度信息存储在单独的变量 latlon 中。使用 geoquadline 函数查找最紧密的地理四边形的极限,该四边形界定了连接顶点与纬度和经度指定的地理坐标的线。为了使地图更易于阅读,将纬度和经度限制扩大 10 个单位。

lon = data.Longitude;
lat = data.Latitude;
[latlim,lonlim] = geoquadline(lat,lon);
buf = 10;
[latlim,lonlim] = bufgeoquad(latlim,lonlim,buf,buf);

从 NASA 检索栅格地图

使用 NASA 网络地图服务生成空间参考栅格数据的地图。wmsfind 函数在 WMS 数据库的 serverurl 条目中搜索字符串 'nasa'。

nasa = wmsfind('nasa','SearchField','serverurl');

使用 refine 函数从 NASA 数据库优化所需栅格图层的搜索。

layer = refine(nasa,'bluemarbleng','SearchField','layername', ...
    'MatchType','exact');

调用 wmsread 函数读取栅格地图。

[A,R] = wmsread(layer(1),'Latlim',latlim,'Lonlim',lonlim);

生成地图

使用 worldmap 函数返回的栅格地图生成玛丽马士基号在过去 10 天内行驶的路径图。

geoshow(A,R);
geoshow(lat,lon);
xlabel('Longitude');
ylabel('Latitude');
axis tight;

另请参阅

函数

外部网站