Javascript 在条形图上显示负值

Javascript 在条形图上显示负值,javascript,html,Javascript,Html,我正在尝试创建一个图表,在这里我可以显示团队的分数差异。很明显,有些球队有负分差异,而有些球队有正分差异 我使用的代码是: myRectangle.enter() .append("rect") .attr("x", function(d, i) { return 45 + i\*50; }) .attr("y", function(d) { if (d.Pts\_diff < 0) {return 800 +(-1)

我正在尝试创建一个图表,在这里我可以显示团队的分数差异。很明显,有些球队有负分差异,而有些球队有正分差异

我使用的代码是:

myRectangle.enter()
    .append("rect")
    .attr("x", function(d, i) {
        return 45 + i\*50;
        })
    .attr("y", function(d) {
        if (d.Pts\_diff < 0) {return 800 +(-1)\*d.Pts\_diff};
        else {return 400 - d.Pts\_diff;}
        })
    .attr("width", 45)
    .attr("height", function(d) {
        return d.Pts\_diff;
    .attr("fill", function(d) {
        if (d.Pts\_diff > 300) {return "red";}
        else if (d.Pts\_diff > 200) {return "orange";}
        else if (d.Pts\_diff > 100) {return "yellow";}
        else if (d.Pts\_diff > 0) {return "green";}
        else if (d.Pts\_diff > -100) {return "blue";}
        else {return "purple;"}
        })
    })
myRectangle.enter()
.append(“rect”)
.attr(“x”,函数(d,i){
返回45+i\*50;
})
.attr(“y”,函数(d){
如果(d.Pts\\ u diff<0){返回800+-1\*d.Pts\\ u diff};
else{return 400-d.Pts\u diff;}
})
.attr(“宽度”,45)
.attr(“高度”,功能(d){
返回d.Pts \\u diff;
.attr(“填充”,功能(d){
如果(d.Pts\_diff>300){返回“红色”}
如果(d.Pts\_diff>200){返回“橙色”}
如果(d.Pts\_diff>100){返回“黄色”}
如果(d.Pts\_diff>0){返回“绿色”}
如果(d.Pts\_diff>-100){返回“蓝色”;}
else{return“purple;”}
})
})
当我这样做时,我会得到一个错误,说我有一个意外的标记“else”


有什么建议吗?

我想你的问题是这条线

if (d.Pts\_diff < 0) {return 800 +(-1)\*d.Pts\_diff};
if(d.Pts\\ u diff<0){return 800+(-1)\*d.Pts\\ u diff};
最后还有一个“;”,因为下一行以
else
开头。
删除分号

\*
\\\
是无效的javascript(除非它们位于字符串/regex中)。你还有一个流浪的
if
块后的code>。这似乎是
意外标记“else”
的来源,我不知道它为什么会被这样翻译。它们应该是
d.Pts_diff
谢谢,不知道我怎么会错过了。没问题。这种事经常发生。