这是小提琴。
<?php
$values = array(54, 67, 68, 72, 98, 103, 112, 136, 169, 200, 201);
$max = max($values);
$min = min($values);
$fontMin = 10;
$fontMax = 20;
$valueDiff = $max - $min;
$fontDiff = $fontMax - $fontMin;
$incrementEvery = round($valueDiff / $fontDiff);
foreach ($values as $value) {
$actualFont = round(($value - $min) / $incrementEvery) + $fontMin;
echo "$value: $actualFont \n";
}
结果是:
54: 10
67: 11
68: 11
72: 11
98: 13
103: 13
112: 14
136: 15
169: 18
200: 20
201: 20
单线是:
round(($value - $min) / round(($max - $min) / ($fontMax - $fontMin))) + $fontMin;