代码之家  ›  专栏  ›  技术社区  ›  Kristina

计算图形的相对点坐标?

  •  0
  • Kristina  · 技术社区  · 15 年前

    我在做一个简单的 使用canvas元素的图形库。我的数学真的很烂,所以我被一个简单的问题困住了。

    30000 ,我想把它和图的高度相对,也就是

    2 回复  |  直到 15 年前
        1
  •  2
  •   MikeTheReader    15 年前

    你应该计算出你的最大值。比如说,在这种情况下是50000。然后,把你的身高除以最大值(400/50000),得到一个比率乘数。你想画的任何数字,乘以这个比率,就会得到一个适合你的空间的数字。这就是你想要的吗?

        2
  •  0
  •   MAK    15 年前

    为此,您需要首先找出需要绘制的最大值和最小值。例如,在以下列表中 (x,y) 协调: [(1,3),(2,10),(3,0),(4,-10)] ,最大值为10,最小值为-10。这给了你一个 (max-min = 10-(-10) = ) 20

    请注意,现在可以将y值集转换为范围内的数字 [0,max-min] [0,20] 在这种情况下)。在这里,值0将在图形中被绘制为0,值20将被绘制为400。另外,值 20/2 将绘制为 400/2 . 因此,值 20/x 绘制为 400/x . 这意味着现在可以将任何值绘制为400*value/20。

    所以,要翻译一个给定的值 n 只需将其转换为图形上相应的y值 (n-min)*400/(max-min)