汶川地震 maps mashup

Soovcy问我,地图怎么做的。其实很简单,在yahoo pipes里面有专门的地图mashup模板,叫做“Location Extractor”。到USGS的web站点上可以找到最近1天内的2.5级、5级以上地震和7天内5级以上地震的XML格式RSS,在pipes中使用“fetch feed”导入,经“Location Extractor”后直接输出到“pipes output” 就可以了。

【以上只是简单过程】我的这个还加入了过滤、翻译和文字regex,效果参见《汶川地震分布图》。不过不想鼓捣pipes的朋友可以直接去我那里抓下来,方法是在页面上点击“Get as a Badge”,之后你就知道怎么做了,看图:
pipes.png

不过,小胖说他那里很慢,甚至会死在哪里。所以,还是做个更流行的吧:

点击每个地标可以显示USGS的相应地震信息

这个地图是全世界7天内震级大于2.5级的地震分布图,只不过我把它聚焦在汶川而已。

【做法】:Google maps + USGS RSS
==head 区==
《script src=”geoxml-rss_files/maps” type=”text/javascript”》《/script》
《script src=”geoxml-rss_files/main.js” type=”text/javascript”》《/script》

《style type=”text/css” media=”screen”》.gmnoscreen{display:none}《/style》《style type=”text/css” media=”print”》.gmnoprint{display:none}《/style》
《script type=”text/javascript”》

var map;
var geoXml;
var toggleState = 1;

function initialize() {
if (GBrowserIsCompatible()) {
geoXml = new GGeoXml(“http://earthquake.usgs.gov/eqcenter/catalogs/7day-M2.5.xml”);
map = new GMap2(document.getElementById(“map_canvas”));
map.removeMapType(G_NORMAL_MAP);
map.removeMapType(G_SATELLITE_MAP);
map.setCenter(new GLatLng(31.506675,104.45625), 8);
map.addControl(new GLargeMapControl());
map.addOverlay(geoXml);
}
}

function toggleMyKml() {
if (toggleState == 1) {
map.removeOverlay(geoXml);
toggleState = 0;
}
else {
map.addOverlay(geoXml);
toggleState = 1;
}
}
《/script》

==body区==
《body onload=“initialize() ”》

==post区==

《p id=”map_canvas” style=”border: 1px solid black; width: 480px; height: 380px; float: left”》
《input value=”Toggle Markers” onclick=”toggleMyKml();” type=”button” /》

Advertisements

One comment on “汶川地震 maps mashup

  1. Pingback: 如何提高你的信息管理效率? | 畅想帮

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s