matlab画等值线如何把按经纬度排列的一组数据在地图上画成等值线?

苹果/安卓/wp
苹果/安卓/wp
积分 239, 距离下一级还需 21 积分
权限: 自定义头衔
道具: 彩虹炫, 雷达卡, 热点灯, 雷鸣之声, 涂鸦板, 金钱卡, 显身卡, 匿名卡下一级可获得
权限: 签名中使用图片
购买后可立即获得
权限: 隐身
道具: 金钱卡, 雷鸣之声, 彩虹炫, 雷达卡, 涂鸦板, 热点灯
哼哼签到天数: 59 天连续签到: 1 天[LV.5]常住居民I
最近在做空间面板方面的计量,我想请问一下我现在有400多个地区的经纬度,想要具体算出这400多个地区两两之间的距离。请问应该如何用matlab编程?
支持楼主:、
购买后,论坛将把您花费的资金全部奖励给楼主,以表示您对TA发好贴的支持
载入中......
楼主留个联系方式,我们好详谈,qq就行了
你可以用空间距离公式与逼近弧长距离即可
goodegg123 发表于
楼主留个联系方式,我们好详谈,qq就行了qq,wechat :daisy_happier
楼主,您好,写论文急需地区的经纬度资料,请问能否共享,或者用论坛币购买也行,谢谢!!
调用matlab中distance函数
论坛好贴推荐
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
为做大做强论坛,本站接受风险投资商咨询,请联系(010-)
邮箱:service@pinggu.org
合作咨询电话:(010)
广告合作电话:(刘老师)
投诉电话:(010)
不良信息处理电话:(010)
京ICP证090565号
京公网安备号
论坛法律顾问:王进律师二次元同好交流新大陆
扫码下载App
汇聚2000万达人的兴趣社区下载即送20张免费照片冲印
扫码下载App
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(4132)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_080065',
blogTitle:'如何用matlab显示经纬度,地图边界',
blogAbstract:'function AOT=fread_function(aot,latmin,latmax,lonmin,lonmax,sample,line)AOT=reshape(aot,sample,line)\';axesm mercator% axesm eqdcylin axesm(\'mercator\',\'maplatlim\',[latmin latmax],\'maplonlim\',[lonmin lonmax])& & &%framem onlatlim = [latmin latmax]; longlim = [lonmin lonmax];[latgrat,longrat] = meshgrat(latlim,longlim,[sample,line]);',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:2,
permalink:'blog/static/',
commentCount:3,
mainCommentCount:1,
recommendCount:1,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}[转载]转:matlab画地图的工具:worldmap和m_map
matlab画地图1、用matlab画世界地图
[matlab自带的例子]
ax = worldmap('World'); setm(ax, 'Origin', [0 180 0]) land = shaperead('landareas', 'UseGeoCoords', true); geoshow(ax, land, 'FaceColor', [0.5 0.7 0.5]) lakes = shaperead('worldlakes', 'UseGeoCoords', true); geoshow(lakes, 'FaceColor', 'blue') rivers = shaperead('worldrivers', 'UseGeoCoords', true); geoshow(rivers, 'Color', 'blue') cities = shaperead('worldcities', 'UseGeoCoords', true); geoshow(cities, 'Marker', '.', 'Color', 'red')
2、matlab的m_map工具箱及添加行政边界底图
对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、Mercator、UTM等。可以测量距离(
m_lldist, m_xydist
),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的matlab函数语法类似,很容易使用。
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。
除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件(
的下载服务),将下载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间,可以直接m_plot,也可以调用m_plotbndry()。
通过以上方法可以实现.shp在matlab绘图中的应用。
3、[原创ZHOU
Feng]在matlab中利用worldmap画中国区域图时加上台湾和钓鱼岛
Matlab是我们常用的一个画图和计算、仿真工具,在我们海洋科研中,经常在画图时需要加上底图(譬如海岸线,国界、省界线等等)。常用的一个工具包是M_map。但这里我要讲的是利用matlab自带的一个画图工具包话底图,这个工具包就是worldmap.
worldmap的一般用法约为:
&& worldmap('china');
如果要加入颜色的画,一般可以这样:
worldmap('china','patch')
scaleruler
这时候问题就出来了。因为鬼子偷偷的讲台湾和大陆用两种颜色表示;甚至,如果你放大图片的画,会发现钓鱼岛也是不同颜色。这个是我们不能忍受的!!!!!
于是我就费了一点时间,琢磨这个画图,然后修改。下面是这个脚本程序,在matlab中执行就可,这时候台湾和钓鱼岛和大陆就是一个颜色了^_^。
用兴趣的朋友可以把这个用法举一反三((ZHOU
Feng)zhoufeng@。matlab版本是6.5)。
不过老实说,我不太用matlab自带的这个画图包,用M_map比较多一点。试验一下,感觉还可以用用。
画上述图的代码如下:
% 把台湾和大陆合成一个文件保存起来,这样画图用patch就是一种颜色(Zhou Feng, , SOED,
Hangzhou)。
% by ZHOU Feng
% zhoufeng@
% SOED, 2nd Institute of Oceanography
s1 = worldhi('china');
s2 = worldhi('taiwan');
% add Taiwan together (ZHOU Feng)zhoufeng@
s.lat = [s1.NaN; s2.lat];
s.long= [s1. NaN;s2.long];
% add the Diaoyu Island (钓鱼岛)
% 钓鱼岛群岛由钓鱼岛、黄尾岛、赤尾岛、南小岛、北小岛、大南小岛、大北小岛和飞濑岛等岛屿组成,总面积约7平方公里。
% 地理位置:东经123°-124°34&北纬25°40&-26°。
% ---这里的分辨率只有两块 --
s3 = worldhi('japan');& %(ZHOU
Feng)zhoufeng@
idx = find(x&123.0 &
idy = find(y& 25.5 &
m = length(idy);
&&& tmp=find(idx
== idy(i));
isempty(tmp)
idx(tmp)];&&&
%(ZHOU Feng)zhoufeng@
%%longd = x(id);
%%latd& = y(id);
% find nan
dtmp = find(diff(id)&1);
if isempty(dtmp)
&&& disp('no
elseif length(dtmp)==1
&&& idnew =
[id(1:dtmp); id(dtmp+1)-1;id(dtmp+1:end)];
j=1:length(dtmp)
idnew = [id(1:dtmp(j)+j-1); id(dtmp(j)+1)+j-1;
id(dtmp(j)+j+1:end)];&&&&&&&
% 未试验,可能有误
longd = x(idnew);
latd& = y(idnew);
s.lat = [s. NaN; latd];
s.long= [s. NaN; longd];
worldmap china
h = displaym(s);
OK!!!!!!!!!!!!!!!
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 matlab等值线图 的文章

 

随机推荐