怎么用matlab绘制具有经纬度线的地球俯视图
时间: 2024-06-09 10:05:10 浏览: 164
可以使用 MATLAB 的 Mapping Toolbox 绘制具有经纬度线的地球俯视图。以下是一个简单的示例代码:
```
% 创建地球俯视图
figure;
axesm('MapProjection', 'robinson', 'Grid', 'on');
set(gca, 'FontSize', 14);
% 添加经纬度线
gridm('GLineStyle', '-', 'Gcolor', 'k', 'GLineWidth', 1);
% 添加标题
title('World Map', 'FontSize', 16);
```
在这个示例中,我们使用 Robinson 投影来创建地球俯视图,并添加经纬度线。你可以根据需要修改投影和其他参数。
相关问题
怎么用matlab绘制具有经纬度的圆的地球俯视图
您可以使用 Matlab 的 Mapping Toolbox 绘制地球俯视图。以下是一个简单的示例代码,用于在地球上绘制一个圆:
```matlab
% 圆心坐标
lat0 = 37.7749; % 纬度
lon0 = -122.4194; % 经度
% 圆的半径,单位为千米
r = 100;
% 创建地图投影
axesm('globe', 'Geoid', [1 0]);
% 绘制圆
th = 0:pi/50:2*pi;
lat = asin(sin(lat0)*cos(r/6371) + cos(lat0)*sin(r/6371)*cos(th));
lon = lon0 + atan2(sin(th)*sin(r/6371)*cos(lat0), cos(r/6371)-sin(lat0)*sin(lat));
plotm(rad2deg(lat), rad2deg(lon))
```
在这个示例中,我们首先定义了圆心的经纬度坐标,然后定义了圆的半径。接着,我们使用 `axesm` 命令创建了一个地球俯视图的地图投影。最后,我们使用 `plotm` 命令绘制了圆的轮廓线。
注意,这个代码示例中的半径是以千米为单位的,如果您需要使用其他单位,请相应地更改半径值。
matlab经纬度画二维图,Matlab绘制汉经纬度的散点图 2
在Matlab中,可以使用`scatter`函数绘制经纬度散点图。假设有一组经纬度数据存储在`lon`和`lat`两个向量中,可以按照如下步骤进行绘制:
1. 创建一个新的图像窗口:
```matlab
figure;
```
2. 使用`scatter`函数绘制散点图,设置`MarkerFaceColor`参数为`'k'`,表示散点的填充颜色为黑色:
```matlab
scatter(lon, lat, 'MarkerFaceColor', 'k');
```
3. 设置坐标轴的标签和标题:
```matlab
xlabel('Longitude');
ylabel('Latitude');
title('Scatter Plot of Longitude and Latitude Data');
```
完整的代码如下:
```matlab
% 经纬度数据
lon = [121.47 121.47 121.47 121.47 121.47];
lat = [31.23 31.23 31.23 31.23 31.23];
% 绘制散点图
figure;
scatter(lon, lat, 'MarkerFaceColor', 'k');
% 设置坐标轴标签和标题
xlabel('Longitude');
ylabel('Latitude');
title('Scatter Plot of Longitude and Latitude Data');
```
该代码会绘制出一张黑色的散点图,表示上海市五个区的经纬度位置。
如果要绘制汉字标签的经纬度散点图,可以使用`text`函数在每个散点处添加标签。假设有一组汉字标签存储在`labels`向量中,可以按照如下步骤进行绘制:
1. 创建一个新的图像窗口:
```matlab
figure;
```
2. 使用`scatter`函数绘制散点图,设置`MarkerFaceColor`参数为`'k'`,表示散点的填充颜色为黑色:
```matlab
scatter(lon, lat, 'MarkerFaceColor', 'k');
```
3. 在每个散点处添加标签,设置`FontSize`参数为`14`,表示标签的字体大小为14:
```matlab
text(lon, lat, labels, 'FontSize', 14);
```
4. 设置坐标轴的标签和标题:
```matlab
xlabel('Longitude');
ylabel('Latitude');
title('Scatter Plot of Longitude and Latitude Data with Labels');
```
完整的代码如下:
```matlab
% 经纬度数据
lon = [121.47 121.47 121.47 121.47 121.47];
lat = [31.23 31.23 31.23 31.23 31.23];
% 标签数据
labels = {'黄浦区', '徐汇区', '长宁区', '静安区', '普陀区'};
% 绘制散点图
figure;
scatter(lon, lat, 'MarkerFaceColor', 'k');
% 添加标签
text(lon, lat, labels, 'FontSize', 14);
% 设置坐标轴标签和标题
xlabel('Longitude');
ylabel('Latitude');
title('Scatter Plot of Longitude and Latitude Data with Labels');
```
该代码会绘制出一张带有汉字标签的经纬度散点图,表示上海市五个区的经纬度位置。
阅读全文
相关推荐














