2013-12-17 40 views
0

我正在嘗試創建我的城市地圖,但默認地圖太小。我不想做任何縮放(但),但我想要顯示的大小加倍。D3:是否有一種簡單的方法來靜態放大地圖?

這裏是腳本

var projection; 
var w=1200; 
var h=800; 
var x=-14100; 
var y=7300; 
var scale=66700; 

projection=d3.geo.albers() 
.translate([x,y]) 
.scale([scale]); 
var path=d3.geo.path() 
.projection(projection); 
var svg=d3.select("#data-div") 
.append("svg") 
.attr("width",w) 
.attr("height",h); 
var category; 

// GROUPS 

var paths = svg.append("g"), 
circles = svg.append("g"); 

// TORONTO MAP JSON 

d3.json("d3_files/json/new-toronto.json",function(error, data){ 
paths.selectAll("path") 
.data(data.features) 
.enter() 
.append("path") 
.attr("d",path) 
.attr("name",function(data){ 
    return"<strong>name</strong>" 
}) // end name attr 
.style("fill",function(data){ 
    return"lightgrey"; 
}) // end fill style 
.style("stroke","#000") 
}); // end toronto json 
+1

[這個問題](http://stackoverflow.com/questions/14492284/center-a-map- in-d3-given-a-geojson-object)應該有所幫助。 –

+0

拉爾斯,非常感謝你,當我看到亞當的評論如下時,我總結了這個提示。我現在只是試了一下,它完美的工作! – PatriciaW

回答

1

的提取物代替:

var scale=66700; 

做:

var scale= 33350; 

這將 '變焦' 投影出來。從API

比例因子線性對應於 投影點之間的距離

+0

在發佈此問題之前,我曾嘗試過。如果我將其更改爲該值,地圖會完全消失。如果我進行較小的更改,所發生的只是地圖移動。 – PatriciaW

+0

您可能想發佈一個jsfiddle或bl.ocks –

+0

我從來沒有使用過jsfiddle ......我創建了一個帳戶併發布了我的代碼,但我不確定這是您要求的。 http://jsfiddle.net/PatriciaW/xxAJn/ – PatriciaW

相關問題