【问题标题】:Marking Points on Raphael拉斐尔的标记点
【发布时间】:2012-04-19 05:31:42
【问题描述】:

所以目前我已经设置了一个有效地创建图表的路径。我现在需要做的就是在路径上的点上创建悬停效果以显示点的值。我该怎么做呢?

*编辑*

我想知道如何将标记添加到连续路径上的点? 目前我正在循环通过 PHP 并连接一个具有更多坐标的变量,如下所示:

$line .= ' l '.$x.' '.$y;

然后

echo 'var line = paper.path("M 0 100 '.$line.'")';

看到我使用“l”值来相对添加路径,我将如何为每个点添加标记?

【问题讨论】:

  • 除了您的路径,您还可以添加点/圆添加每个 x/y 位置。我不是那么喜欢 PHP,买这样的东西: for(...) { $line .= 'l '.$x.' '.$y; echo 'var line = paper.path("M 0 100 '.$line.'")'; echo 'var circle = paper.circle($x, $y, 5)'; }
  • 谢谢,这很有帮助!我认为现在唯一的问题是 $x 值是相对于前一点的,那么我将如何使用这些 $x 坐标作为圆位置的绝对值?

标签: php jquery raphael


【解决方案1】:

如果你只是想在一个点(圆圈)上方显示一些信息,你只需要在圆圈的悬停事件中创建一个文本元素并显示它。类似this

编辑

如果你的 x/y 值是相对于前一点的,你应该累积从 0 开始的值。

我不知道究竟是如何用 PHP 编写的,但是是这样的:

var $absoluteX = 0;
var $absoluteY = 0;
for(...) { 
  $line .= ' l '.$x.' '.$y; 
  echo 'var line = paper.path("M 0 100 '.$line.'")'; 

  $absoluteX += $x; // add the relative change to the previous x value
  $absoluteY += $y;
  echo 'var circle = paper.circle($absoluteX, $absoluteY, 5)'; 
}

【讨论】:

  • 好的,这真的很有帮助,谢谢!我现在发现我的问题是我似乎无法在 x 轴上均匀分布点相对论。如果我有一堆 5 个月前的日期,并且范围是 6 个月前到今天,它们都会聚集在一起,看起来很奇怪。您是否知道根据有多少记录并考虑它们建议的 x 值来平均分配它们的任何可能方法?
  • 我不太清楚你的意思,请提供一个jsfiddle.net 的例子,以便更好地理解。
  • @Sneaksta - 为有用的答案投票是出于礼貌,如果它解决了您的问题,则将其标记为已接受。这也将有助于其他用户搜索此问题的解决方案。
猜你喜欢
  • 1970-01-01
  • 2012-09-06
  • 2014-06-01
  • 2012-09-27
  • 2013-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多