以对数刻度计算值

Calculate values in logarithmic scale

我想在位图编辑器中逐像素重绘此 Body Weight 比例。据我了解,这是一个对数刻度,但什么是对数 - 二进制还是十进制?

如何计算以像素为单位的线条之间的距离。也许从 1 数到 70 比倒数更好。

values = []
for kilos, value in enumerate(range(1, 71)):
    //  some logic
    values.append([kilos, pixels])
reverse(values)

假设您想要以 500 像素为单位的高度,您可以使用它来获取间隔:

import math
pixels = 500
offset = math.log(10)
for x in range(10, 71, 10):
    print x, int(pixels * (math.log(x) - offset) / (math.log(70) - offset))

这是输出:

10 0
20 178
30 282
40 356
50 413
60 460
70 500

像素数只是每个间隔开始和结束之间的差异。更改 500 以适合您的应用程序。