Plottable 线段上的箭头

Plottable 线段上的箭头,plottable,Plottable,我使用在图表上显示多条线。如何使这些线的两端有箭头?如果这些线不可能是垂直的,我有一个非常简单的技巧。用于创建散点图,其中点为上箭头或下箭头,并将其放置在线段的末端 否则,您可能需要自己绘制箭头。您可以像下面这样获得线段末端的像素位置: locX=xScale.invert(endpointXValue) locY=yScale.invert(endpointYValue) 然后,您可以在前景中附加一个箭头形状(参见本例中的)您可以通过一些SVG+DOM攻击来实现这一点。您可以定义一个“标记元素

我使用在图表上显示多条线。如何使这些线的两端有箭头?

如果这些线不可能是垂直的,我有一个非常简单的技巧。用于创建散点图,其中点为上箭头或下箭头,并将其放置在线段的末端

否则,您可能需要自己绘制箭头。您可以像下面这样获得线段末端的像素位置:

locX=xScale.invert(endpointXValue)

locY=yScale.invert(endpointYValue)


然后,您可以在前景中附加一个箭头形状(参见本例中的)

您可以通过一些SVG+DOM攻击来实现这一点。您可以定义一个“标记元素”,该元素可以放置在行的开头、中间或结尾(有关标记的详细信息,请参见)

这意味着操作Plottable生成的SVG。要获取底层DOM元素,需要掌握代表每行的d3“selection”

  • 将标记定义添加到渲染绘图的
    元素中。我很确定plottable不会覆盖内部的实体,但如果覆盖了,您可以在渲染绘图后添加它
  • 使用段#实体从绘图()中获取所有“PlotEntity”对象
  • 使用PlotEntity#selection属性()获取表示每个线段的DOM元素集
  • “选择”界面只是一个d3选择()。然后,您可以向每个元素添加适当的“marker end”属性,这将为您提供所需的箭头

  • 非常感谢,这很有帮助-我现在有箭了!不过颜色只有一个小问题——线条的颜色不同,这取决于数据(颜色的动态数量),但标记有固定的颜色。我是否可以让标记从应用到的线条继承颜色?否则我将需要动态创建多个标记(每种颜色一个标记)。我已通过动态定义多个标记(图表中出现的每种颜色一个标记)使其工作。