D3.js 确保(0,0)在折线图中
当折线图中只有一个点时,我只能看到x轴和y轴 但是我想看到一条从(0,0)到这一点的线 我有D3.js 确保(0,0)在折线图中,d3.js,dc.js,D3.js,Dc.js,当折线图中只有一个点时,我只能看到x轴和y轴 但是我想看到一条从(0,0)到这一点的线 我有 charts.push( dc.lineChart(compositeBrushchart).dimension(dim) .colors(config.charts[x].color) .group((add_origin(grp)),config.charts[x].group) .interpolate(config.interpolate) .rende
charts.push(
dc.lineChart(compositeBrushchart).dimension(dim)
.colors(config.charts[x].color)
.group((add_origin(grp)),config.charts[x].group)
.interpolate(config.interpolate)
.renderDataPoints(config.renderdatapoints)
.renderArea(config.renderarea)
.renderDataPoints({radius: config.charts[x].symbolsize})
.dashStyle(config.charts[x].dash.split(","))
可以使用来预处理数据,添加或删除来自交叉过滤器组的点
每次图表绘制时,它都会调用group.all()
以获取其数据。如果将组包装在另一个对象中,则可以修改数据
在本例中,您希望确保点(0,0)始终位于数据的开头
下面是一个简单的实现,假设(0,0)不在您的数据中:
function add_origin(group) {
return {
all: function() {
return [{key: 0, value: 0}].concat(group.all());
}
};
}
您可以在将原始组传递到图表中时将其包装起来:
lineChart
.group(add_origin(group))
如果您的数据中有任何0或负数键,它可能会变得更复杂,但从您的评论来看,您的数据在其他方面似乎是正数
请查看是否有帮助。你需要提供一些数据,以便dc.js&d3知道比例并绘制任何东西,因此我认为你需要伪造它,正如我的评论所示。你的意思是,当没有数据时,你只想在图表的角落添加文本“0”?不,从0开始,我需要绘制线,比如,当有一个0值标签没有显示时,我也想显示该标签,我不明白,或者不明白这与我之前链接的问题有什么不同。也许你可以编辑你的问题,并添加实际和期望行为的图像。好的,我想画一条线,它总是从(0,0)开始到指定的点。我试过这样做,但现在这些线不仅画了它,还显示了点。还有其他的解决办法吗?我不知道没有一个运行的例子你是什么意思。这应该行得通。我将发布一个示例。通常,您应该在您提出的每个问题中都包含代码,这样人们就可以看到您在做什么。charts.push(dc.lineChart(compositeBrushchart)。dimension(dim)。colors(config.charts[x]。color)。group((add_origin(grp)),config.charts[x]。group。interpolate(config.interpolate)。renderDataPoints(config.renderdatapoints).renderArea(config.renderArea).renderdatapoints({radius:config.charts[x].symbolsize}).dashStyle(config.charts[x].dash.split(“,”)。好的,我编辑了你的问题以添加代码。我认为这还不足以告诉你出了什么问题。