将这些值分布为条形图/直方图



在MySQL数据库中,有一个带有单个数值列的表。我想将这些值的分布绘制为条形图/直方图,并具有以下要求:

图表中最多应有 N 根柱线(区间( 每个条形的宽度(x 轴范围(应均匀,每个条形的高度应反映此区间中的值数。 柱线的端点应出现在整数处。我知道这是一个相当模糊的要求,但希望以下示例能够说明我的意思 间隔应该是连续的,例如,下一个间隔应该从前一个间隔结束的地方开始 理想情况下,应该可以通过单个查询检索数据 计数(y 轴值(为 0 的间隔是可以

// intervalCount is what I've referred to as "N"
static Integer getRoundedIntervalSize(Double min, Double max, Integer 
intervalCount) {
Number intervalSize = Math.ceil((max - min) / intervalCount)
Integer roundingScale = Math.log10(intervalSize) - 1
Number roundNearest = 10 ** roundingScale
// round up the interval size to the nearest roundNearest
Number intervalDelta = roundNearest - (intervalSize % roundNearest)
intervalSize + intervalDelta

}

最新更新