一组号码的百分比



我被要求制作一个图表,显示每个页面上有多少用户。这个图表将用颜色编码,其中用户最多的页面将具有100%的不透明度,浏览者最少的页面将具有40%的不透明度,而介于两者之间的页面将具有相应的不透明度。

我有一组数字,我需要

  • 最大为100%
  • 最小值为40%
  • 介于100%和40%之间的数字

可以是大于等于1的任意整数。

给定1000 500 100 50

  • 1000应为100%
  • 500应该是??
  • 100应该是??
  • 50应该是40%

或,给定2,1

  • 2应该是100%
  • 1应该是40%

给定1000,1

  • 1000应为100%
  • 1应该是40%

Or given 7485, 395,3

  • 7485应该是100%
  • 395应该是??
  • 3应该是40%

我希望你能理解。

我可以用什么方程来解这个?

我知道得到的百分比是(# / largest_number) * 100但是我迷失了在100%到40%之间的尝试

我能得到的最接近的是((#/largest_number) * 60) + 40,但这假设0是最小的数字,并且在第一组数字(50)中我的最小数字是43,而不是我需要的40%。

提前感谢!

(# / largest_number) * 100代替x = ((# - lowest_number) / (largest_number - lowest_number) * 100获得百分比

这是一个基本的归一化函数-详细信息见这里。

这样,largest number将始终映射到1,lowest_number将始终映射到0,然后您可以使用函数(x * 60) + 40

进行插值。

最新更新