簡體   English   中英

將NVD3中的y軸最大標簽設置為高一個刻度增量

[英]Set y-axis maximum label to one tick increment higher in NVD3

我正在使用NVD3(d3的包裝器)繪制折線圖。 我希望圖形中的數據在軸的范圍內。 但是,它看起來與其他標簽不一致,因為圖表單獨顯示了我的數據集的最大值。 看截圖:

在此處輸入圖片說明

在這個例子中,18554.41是我的最高數據點。 我想看到的是刻度線/軸標注在整個過程中都以相同的舍入順序進行,沒有溢出。 即20,000,18000,16000等。

需要注意的是,我的數據集可以有很大的不同-因此,我不能只設置一個最大值。 有沒有一種方法可以將滴答聲計數增加一個或多個?

當前相關代碼:

var chart = nv.models.lineChart()
                    .showYAxis(true)
                    .forceY([0]);

chart.yAxis
         .axisLabel('£')
         .tickFormat(d3.format(','))
         .ticks(8);

編輯:添加了https://jsfiddle.net/60equ79h/2/

在小提琴中,我希望第一個數據集的最高標簽為10,000。 第二個是80。即我希望將y軸增加一個刻度

如果我正確理解了您的問題,則可以強制yAxis使用您定義的值。 您可以對值進行硬編碼或編寫一些巧妙的方法來標識yAxis的最小值和最大值。

更新圖表以具有以下內容:

chart.forceY([0, 20000]); // [min, max]

希望能幫助到你

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM