reactjs - 在 D3.js 中在另一个折线图上绘制一条常量线
问题描述
目标是显示一条线作为阈值。
这是从值绘制的线。
注意:lineGenerator
只是从压缩数据中获取相应的 x、y。
svg
.append('path')
.data([d3.zip(xValues, yValues)])
.attr('fill', 'none')
.attr('stroke', '#000')
.attr('stroke-width', 1.5)
.attr('d', lineGenerator);
但是,当我想在顶部添加一个只是常数的附加折线图时,它似乎不想以相同的比例绘制。从下面的代码生成的行大约是总 x 值的 1/8,我知道这xExtent
是正确的。
注意:这xExtent
只是上一条路径中 X 值的最小值/最大值。
svg
.append('line')
.attr('x1', xExtent)
.attr('y1', 1.5)
.attr('x2', xExtent[1])
.attr('y2', 1.5)
.attr('stroke', '#000')
.attr('stroke-width', 1.5);
不太确定我做错了什么,因为我希望这条恒定线显示在整个图表的顶部。
解决方案
参考:http ://bl.ocks.org/mikehadlow/93b471e569e31af07cd3
var xScale = d3.time.scale().range([0, width]).domain(xDomain);
var yScale = d3.scale.linear().range([height, 0]).domain(yDomain);
g.append('line')
.attr('x1', xScale(xDomain[0]))
.attr('y1', yScale(warnLine.lineValue))
.attr('x2', xScale(xDomain[1]))
.attr('y2', yScale(warnLine.lineValue))
.attr('class', 'zeroline');
推荐阅读
- java - 使用具有两个不同延迟的 retryWhen 重新连接
- autodesk-forge - 下载压缩衍生品
- java - 在数组中存储从右上角到左下角的所有对角线
- apache-kafka - 当replica.lag.time.max.ms 较高时,生产者request.timeout.ms 是否兑现?
- git - 'git diff' 可以只输出长行中的变化吗?
- javascript - 如何在 JavaScript 中创建一个将文本增加 1px 的按钮
- c# - 使用 XmlSerializer 时,我们可以将 Flag 枚举值标记为过时吗?
- python - 芹菜,大块和弦
- angular - 在我的组件中将枚举转换为材料选择
- android - 在为 android 设计模型时应该考虑导航栏吗?