我正在使用 d3.interpolateViridis 處理連續的顏色圖例。我在顯示圖例刻度值時遇到問題。我想在圖例中顯示我的 min(在一端)和 max(在另一端)(域值)。我嘗試更改刻度值但沒有幫助。
這是我的代碼片段:
//scale
var colorScale2 = d3.scaleSequential(d3.interpolateViridis).domain([0, 0.38]);
//other code
var legendscale = d3.scaleLinear()
.range([0, legendheight - margin.top - margin.bottom])
.domain(colorscale.domain());
// scale tick
var legendaxis = d3.axisRight()
.scale(legendscale)
.tickSize(16)
.ticks(2);
另外,我已經共享了 JS 小提琴鏈接,其中將刻度設為 0.0 和 0.2(這應該是最大值:0.38)。
https://jsfiddle.net/shru90/e42vcLy0/30/
注意:我的最小值為 0,最大值為 0.38(可能因資料而異)
uj5u.com熱心網友回復:
默認情況下,軸將刻度放在漂亮的圓形值上。如果您想要為特定值設定刻度線,則可以設定tickValues:
d3.axisRight()
.scale(legendscale)
.tickSize(16)
.tickValues(legendscale.domain());
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/326000.html
標籤:javascript d3.js 传奇 规模
