如何将数字向下舍入到一个范围内
我对一个项目有一个奇怪的要求。
我有一个包含 30 列的 HTML 表格 - 每列都显示为实心条,高度设置为该列的值。列的最大值设置为 200。每列都是动态生成的,有时值会超过 200。(例如 680、340、210 等)。
我想知道的是如何将这个数字减少到200以下?该总和需要应用于所有每一列。所以,价值 = 200 的 x%。
有什么想法吗?
I have a strange request on a project.
I have an HTML table with 30 columns - each column is displayed as a solid bar with the height set to the value of the column. The max value for the columns is set to 200. Each column is dynamically generated and sometimes the values exceed that of 200. ( for instance 680, 340, 210 etc etc).
What I want to know is how do I work this number down to less than 200? This sum would need to be applied to all each of the columns. So, value = x% of 200.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你需要正常化。取最大值(数据集的最大值 - 动态且必须计算,或可能的最大值,静态)并将每个实际值除以该最大值,然后乘以列高:
renderedHeight =实际值/最大*列高
You need to normalise. Take the maximum value (either the maximum of the data set - which is dynamic and must be calculated, or the maximum possible, which is static) and divide each actual value by this max, and multiply by column height:
renderedHeight = actualValue / max * columnHeight
这可以使用 javascript 及其
Math
函数来实现。或者只是一个简单的if
语句。This is possible using javascript and its
Math
functions. Or just a simpleif
statement.