有没有人有一个很好的算法来计算轴最小值和最大值?
在为给定的一组数据项创建图表时,我希望能够给出算法:
集合中的最大值(y)
集合中的最小(y)值
轴上出现的刻度线数量
必须显示为勾号的可选值(例如,显示+ ve和-ve值时为零)
算法应该返回
轴的最大值
最小轴值(尽管可以从最大值,间隔大小和刻度数推断出来)
间隔大小
刻度应该是规则的间隔应该是"合理的"尺寸(例如1,3,5,甚至可能是2.5,但不是更多的sig figs).
可选值的存在将使此偏斜,但如果没有该值,则最大项目应出现在前两个刻度线之间,最低值位于底部两个之间.
这是一个与语言无关的问题,但是如果有一个C#/.NET库,那将会粉碎;)