D3.js 带复合轴的Dimple.js折线图,系列上的点之间没有链接

D3.js 带复合轴的Dimple.js折线图,系列上的点之间没有链接,d3.js,dimple.js,D3.js,Dimple.js,我一直在玩新发布的,我试图复制一些简单的民意调查数据-3系列(是,否,不确定)对一个Y轴 很明显,我在某个地方犯了一个基本的错误。。。基本原理是,每次要在另一组数据上分层时,定义一个y轴,然后将其作为参考传递,但它似乎没有将它们视为三个不同的系列(点之间没有直线,除非链接两个相同但不相邻的值,例如“否”2002年和2004年为30%,尽管两者之间的数值不同) 此外,根据注释掉的行,如果我尝试将x轴切换到时间,则会出现D3错误 这里的问题不是正确使用的复合轴。这是系列定义。addSeries的第

我一直在玩新发布的,我试图复制一些简单的民意调查数据-3系列(是,否,不确定)对一个Y轴

很明显,我在某个地方犯了一个基本的错误。。。基本原理是,每次要在另一组数据上分层时,定义一个y轴,然后将其作为参考传递,但它似乎没有将它们视为三个不同的系列(点之间没有直线,除非链接两个相同但不相邻的值,例如“否”2002年和2004年为30%,尽管两者之间的数值不同)

此外,根据注释掉的行,如果我尝试将x轴切换到时间,则会出现D3错误


这里的问题不是正确使用的复合轴。这是系列定义。addSeries的第一个参数要么采用要分解的维度,要么采用不在数据中的字段(用作标签)。这种方法的唯一限制是不能在数据中用维度名称标记序列。在这种情况下,例如,第一个系列(适用于所有系列)按“是”分类,对于线系列,这意味着它尝试为每个“是”值绘制一条线,这意味着每行1条线,因此所有单个未连接点。解决办法是给你的线路命名不同的名称。例如:

myChart.addSeries("Y", dimple.plot.line, [dateAxis, yesAxis]);
myChart.addSeries("N", dimple.plot.line, [dateAxis, noAxis]);
myChart.addSeries("U", dimple.plot.line, [dateAxis, unsureAxis]);
这是你最新的小提琴:

如果希望名称看起来匹配,只需在序列名称后面添加一个空格:

myChart.addSeries("Yes ", dimple.plot.line, [dateAxis, yesAxis]);
myChart.addSeries("No ", dimple.plot.line, [dateAxis, noAxis]);
myChart.addSeries("Unsure ", dimple.plot.line, [dateAxis, unsureAxis]);
这也会起作用

myChart.addSeries("Yes ", dimple.plot.line, [dateAxis, yesAxis]);
myChart.addSeries("No ", dimple.plot.line, [dateAxis, noAxis]);
myChart.addSeries("Unsure ", dimple.plot.line, [dateAxis, unsureAxis]);