![](/img/trans.png)
[英]Displaying values associated with each color gradient mapped from range in D3 legend
[英]Return individual value from a D3 color range to create legend
我有5種顏色的代碼:
var color = d3.scaleQuantize()
.range([
'rgb(237,248,233)',
'rgb(186,228,179)',
'rgb(116,196,118)',
'rgb(49,163,84)',
'rgb(0,109,44)'
]);
我想獲取這些值中的每個值,以便為圖例着色。
我正在嘗試類似的事情,但是它不起作用:
.style('fill', function (d, i) {
return color.range([0]);
});
如何引用顏色范圍中的每個項目,以便可以用這種方式為圖例着色?
謝謝!
編輯:對不起,我把那用來測試代碼的console.log放在了那兒,現在糾正了。
您可以使用i的函數變量,這些i變量遵循順序。 例如
.style("fill", function (d,i) {
return color(i);//or color.range(i);
我想我知道了。 如果在括號中輸入數字,則d3.scaleQuantize()將返回一個值。 但是,只是像常規陣列那樣進行顏色處理就可以分別給我每種顏色,可以將其輸入到圖例中。
.style("fill", function (d, i) {return d};)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.