我有顯示總人口的美國等值線地圖。我想在地圖上添加一個顯示分位數範圍值的圖例。我已經看到關於此主題的其他類似問題,但似乎無法使其適用於我的具體情況。我知道我需要包含顏色範圍或顏色域,但不確定這是否是正確的方法。截至目前,只有一個功能出現在圖例中,可能是所有圖例功能都堆疊在一起。我怎麼知道確切的,我該如何解決這個問題。帶有傳奇色彩的D3等位地圖
//Define default colorbrewer scheme
var colorSchemeSelect = "Greens";
var colorScheme = colorbrewer[colorSchemeSelect];
//define default number of quantiles
var quantiles = 5;
//Define quantile scale to sort data values into buckets of color
var color = d3.scale.quantile()
.range(colorScheme[quantiles]);
d3.csv(data, function (data) {
color.domain([
d3.min(data, function (d) {
return d.value;
}),
d3.max(data, function (d
return d.value
})
]);
//legend
var legend = svg.selectAll('rect')
.data(color.domain().reverse())
.enter()
.append('rect')
.attr("x", width - 780)
.attr("y", function(d, i) {
return i * 20;
})
.attr("width", 10)
.attr("height", 10)
.style("fill", color);
類似[this](http://bl.ocks.org/KoGor/5685876)?您只需要將輸出顏色的範圍設置爲分位數(即5種顏色)。 –
是的,我希望它與該示例類似。我不想爲像圖例這樣的圖例使用硬編碼值的變量。我希望它使用color.domain和colorScheme變量來填充圖例值。 – bailey