例如,我想通过gps coords(lat,lng)添加一个自定义html对象到wart map,如用css或任何其他(js?)标记动画完成的脉动点
<style> #circle { background: red; width: 10px; height: 10px; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; } .gps_ring { border: 3px solid red; -webkit-border-radius: 30px; height: 18px; width: 18px; left:20px; top:214px; -webkit-animation: pulsate 1s ease-out; -webkit-animation-iteration-count: infinite; opacity: 0.0 } @-webkit-keyframes pulsate { 0% {-webkit-transform: scale(0.1,0.1); opacity: 0.0;} 50% {opacity: 1.0;} 100% {-webkit-transform: scale(1.2,1.2); opacity: 0.0;} } </style> <div id="state" class="grid_4 alpha"> <div class="gps_ring"></div> </div>
解决方法
您可以从投影中获取x,y坐标:
var projection = d3.geo.mercator() .center([0,5 ]) .scale(150); projection([long,lat]);
对于动画,您可以使用d3转换example或CSS.
我为你创建了一个块:http://bl.ocks.org/ckothari/32149f15261b9c5c7a56c40f7f6b353d
编辑
对不起,只是意识到你的问题是关于使用http://datamaps.github.io/.让我知道如果你可以使用topojson,否则我将删除我的答案.
编辑-2
要颜色国家:
d3.tsv('data.csv',function(data){ g.selectAll('path') .filter(function(d){ return data.find(function(d1){ return d1.iso == d.properties.iso_a2; }) }) .attr('class','selected'); //... })
EDIT-3链接转换
更新的例子:https://bl.ocks.org/ckothari/raw/32149f15261b9c5c7a56c40f7f6b353d/