用 D3 画垂直线(动态数据显示)
Posted
技术标签:
【中文标题】用 D3 画垂直线(动态数据显示)【英文标题】:draw vertical line with D3 ( Dynamic Data Display) 【发布时间】:2015-08-01 15:38:27 【问题描述】:我正在创建一个 ChartPlotter 并使用 CursorCoordinateGraph 我能够获取 MouseLeftButtonDown 事件的 X 坐标。
private CursorCoordinateGraph mouseTrack;
private void OnLoaded(object sender, RoutedEventArgs e)
mouseTrack = new CursorCoordinateGraph();
firstPlotter.Children.Add(mouseTrack);
private void OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
Point mousePos = mouseTrack.Position;
var transform = firstPlotter.Viewport.Transform;
Point mousePosInData = mousePos.ScreenToData(transform);
double xValue = mousePosInData.X;
有没有办法在 xValue 坐标上画一条垂直线?我有点迷失在折线图、线条、垂直线中。。
【问题讨论】:
您应该添加解决方案作为答案,您可以在 2 天内接受。 【参考方案1】:在 OnMouseLeftButtonDown 中计算 xValue 之后添加这行代码。
VerticalLine vl = new VerticalLine();
vl.Value = xValue;
我假设您想将该行添加到上述绘图仪:
firstPlotter.Children.Add(vl);
您可以对 HorizontalLine 使用相同的方法。
【讨论】:
以上是关于用 D3 画垂直线(动态数据显示)的主要内容,如果未能解决你的问题,请参考以下文章
前端/h5 D3.js实现根据数据动态更新图形/类似进度实时变化效果
动态数据显示 - 从 ChartPlotter 获取水平和垂直