Dojo 1.5.0图表传奇丢失

时间:2010-07-28 16:06:53

标签: dojo legend dojox.charting

我刚刚从Dojo 1.4.3升级到1.5.0,发现我的传奇现在已经丢失了。 其他人都有这个问题??

我一直收到以下错误:

o在dojo.js第73行中未定义

时会发生此错误

chart1.render(); //图表显示但是错误导致该javascript函数中的其余代码不执行(因此,不是图例,因为它是在chart1.render(); line之后创建的。

执行。在1.4.3版本中完美运行。

2 个答案:

答案 0 :(得分:0)

图表测试是否适合您?转到Dojo Nightly Charting Tests并选择使用工具提示的测试,例如test_event2d.html。如果它适合您,请查看您的设置有何不同。如果您发现了差异,并且与Dojo有关,请file a bug。不要忘记提及您使用的浏览器,并将简约测试用例附加为文件。

答案 1 :(得分:0)

发现问题 ..这似乎是一个错误,但不是100%肯定...以下是如何使用它重新创建它 Dojo Nightly Charting Tests代码和dojo版本1.5.0(任何Web浏览器):

注意:添加系列以绘制“其他”并调用chart1.render()时会发生此错误;不止一次。如果是chart1.render();只调用一次,没有错误,一切正常。请参阅“系列B”的addSeries ...删除情节:“系列B”中的“其他”,即使两次调用chart1.render(),一切正常。只需从“默认”addPlot中删除“markers:true”并调用char1.render()即可重新创建此问题;两次。

警告:代码部分中的下方HTML未正确显示,但所有javascript代码都可以轻松重现此问题。

Eugene :感谢您提供测试页面的链接,这有助于解决问题。另外,我应该提交关于这个的错误报告吗?


    




Event 2D

 @import "dojo-release-1.5.0/dojo/resources/dojo.css";
 @import "dojo-release-1.5.0/dijit/tests/css/dijitTests.css";




.dojoxLegendNode {border: 1px solid #ccc; margin: 5px 10px 5px 10px; padding: 3px}
.dojoxLegendText {vertical-align: text-top; padding-right: 10px}




dojo.require("dojox.charting.Chart2D");
dojo.require("dojox.charting.themes.PlotKit.green");

dojo.require("dojox.charting.action2d.Highlight");
dojo.require("dojox.charting.action2d.Magnify");
dojo.require("dojox.charting.action2d.MoveSlice");
dojo.require("dojox.charting.action2d.Shake");
dojo.require("dojox.charting.action2d.Tooltip");

dojo.require("dojox.charting.widget.Legend");

dojo.require("dojo.colors");
dojo.require("dojo.fx.easing");

var dc = dojox.charting;

var dur = 450;
var chart1;

makeObjects = function(){
 chart1 = new dc.Chart2D("test1");
 //chart1.setTheme(dc.themes.PlotKit.green);
 chart1.addPlot("default", {type: "Default", lines: true, markers: true, tension:2});
        chart1.addPlot("other",  {type: "Lines",
    hAxis: "other x",
    vAxis: "other y"
   });
 chart1.addPlot("grid",  {type: "Grid",
             hMajorLines: true,
           hMinorLines: false,
           vMajorLines: true,
           vMinorLines: false
   });
 chart1.addAxis("x", {min: 0, max: 6, majorTick: {stroke: "black", length: 3}, minorTick: {stroke: "gray", length: 3}});
 chart1.addAxis("y", {vertical: true, min: 0, max: 10, majorTick: {stroke: "black", length: 3}, minorTick: {stroke: "gray", length: 3}});
 chart1.addAxis("other x", {leftBottom: false, min: 0, max: 6, majorTick: {stroke: "black", length: 3}, minorTick: {stroke: "gray", length: 3}});
 chart1.addAxis("other y", {leftBottom: false, vertical: true, min: 0, max: 10, majorTick: {stroke: "black", length: 3}, minorTick: {stroke: "gray", length: 3}});
 chart1.addSeries("Series A", [{x: 0.5, y: 5}, {x: 1.5, y: 1.5}, {x: 2, y: 9}, {x: 5, y: 0.3}]);
 chart1.addSeries("Series B", [{x: 0.3, y: 8}, {x: 4, y: 6, tooltip: "Custom tooltip"}, {x: 5.5, y: 2}], {plot: "other"});
 var anim1a = new dc.action2d.Magnify(chart1, "default");
 var anim1b = new dc.action2d.Tooltip(chart1, "default");
 chart1.render();
 chart1.render();
 var legend1 = new dojox.charting.widget.Legend({chart: chart1, horizontal: false}, "legend1");

};

dojo.addOnLoad(makeObjects);




Event 2D

Go

-->

Hover over markers, bars, columns, slices, and so on.

1: Markers, lines, 2D data, custom axis. Actions: Magnify, Tooltip.

That's all Folks!