我使用Chart.js(http://www.chartjs.org)来显示使用条形图的不同单位的流量使用情况。如果我有大范围的使用(1个单位2.5GB,2个单位2.5MB,3个单位2.5kB,4个单位0B)最小值不可用(我不能将鼠标悬停或点击它们)将它们带到一个值,比如说到GB(2.5,0.0024,2.38E-6,...,0)或MB(2560,2.5,0.0024,...,0)。请所有想法如何在一个图表上显示它们以保持比例以及在每个条形图上点击和悬停的能力(甚至0)
提前致谢
答案 0 :(得分:0)
点击并悬停在每个栏上的能力
不幸的是,酒吧没有pointHitDetectionRadius等价物。但是你可以覆盖Chart.Rectangle的inRange函数,以提供更多的垂直检测范围。
Chart.Rectangle.prototype.inRange = function (chartX, chartY) {
return (chartX >= this.x - this.width / 2 && chartX <= this.x + this.width / 2) && (chartY >= this.y && chartY <= (this.base + 5));
};
我已经从x轴向下延伸了5个单位的垂直区域,但你也可以将它改为轴上方(只是从它中减去它。)
小提琴 - https://jsfiddle.net/etLfr9ka/
请所有想法如何在一张图表上显示它们
只要您不将barShowStroke设置为false,您就会看到偶数为0的笔划。
替代方案是选择一个支持对数比例的框架,或者允许你将y比例分成几个部分的框架 - 不过IMO这是一个坏主意。