[英]Understanding D3 domain and ranges
我的溫度范圍為 33 華氏度到 64 華氏度。我試圖找出沿 600 個像素的 y 軸 59 度的像素位置。 這是用於柱狀圖。
完全公開,這是我一直在努力解決的家庭作業,只是還沒有弄清楚。
var scale = d3.scale.linear().domain([33,64]).range([0,64]);
scale(59) 返回 53.677419354838705 這是錯誤的答案。 600 - 53.677419354838705 也是錯誤的答案。
我可能缺少什么?
謝謝你。
域是一組完整的值,因此在這種情況下,這是您的所有溫度,從 33 到 64。范圍是函數的結果值集,在這種情況下,是將溫度從 0 縮放到600。
所以你快到了,你只是使用了錯誤的范圍 - 在這種情況下,你的范圍應該是你的 y 軸的跨度(0 - 600):
var scale = d3.scale.linear().domain([33, 64]).range([0, 600]);
這將導致scale(59)
給出503.2258064516129
的輸出。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.