Jqplot y轴值为KB / MB / TB / PB

时间:2013-09-30 07:08:06

标签: jqplot

如何以KB / MB / GB / TB为单位获取jqPlot y轴值。我有像datanode记录 - 没有。一天中读取和写入的字节数,并通过JqPlot绘制它。但我希望我的y轴应包含带有符号KB / MB / TB / PB的数据。

like instead of
1024, should be 1 KB and
4096 - 2 KB
1048576 - 1 MB
1073741824 - 1 GB

如果可以,请帮助我......

1 个答案:

答案 0 :(得分:5)

我相信你要找的是jqplot tickOptions格式化程序功能 http://www.jqplot.com/docs/files/jqPlotOptions-txt.html

yaxis:{
                labelRenderer: $wnd.$.jqplot.CanvasAxisLabelRenderer,
                tickOptions: {
                    formatter: function (format, val) { 
                                if (typeof val == 'number') { 
                                    if (!format) { 
                                        format = '%.1f'; 
                                    } 
                                    if (Math.abs(val) >= 1073741824 ) {
                                        return (val / 1073741824).toFixed(1) + 'GB';
                                    }
                                    if (Math.abs(val) >= 1048576 ) {
                                        return (val / 1048576 ).toFixed(1) + 'MB';
                                    }
                                    if (Math.abs(val) >= 1024) {
                                        return (val / 1024).toFixed(1) + 'KB';
                                    }
                                    return String(val.toFixed(1));
                                } 
                                else { 
                                    return String(val); 
                                }
                    } 
                 }
            }