我正在编写一些代码来在我们的软件中显示条形(或线形)图。一切都很好。让我困惑的是标记 Y 轴。
打电话的人可以告诉我他们想要多么精细的 Y 量表标签,但我似乎陷入了到底是什么标签他们在一个“有吸引力”的方式。我无法形容“有吸引力”,也许你也不能,但我们看到它时就知道了,对吧?
因此,如果数据点是:
15, 234, 140, 65, 90
用户需要在 Y 轴上标注10个标签,然后用纸和铅笔做一点小小的修改,就可以得到:
0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250
所以这里有10个(不包括0) ,最后一个刚好超过最高值(234 < 250) ,这是一个“不错的”增量,每个增量为25。如果他们要求8个标签,增加30个看起来不错:
0, 30, 60, 90, 120, 150, 180, 210, 240
九个就很棘手了。也许只要用8或10,并称之为足够接近就可以了。当一些点是负的时候怎么办?
我可以看到 Excel 很好地解决了这个问题。
有人知道一个通用的算法(甚至一些蛮力也可以)来解决这个问题吗?我不需要动作很快,但应该看起来不错。