Dojo 1.5.0 Charting Legend отсутствует - PullRequest
0 голосов
/ 28 июля 2010

Я только что обновился с Dojo 1.4.3 до 1.5.0 и заметил, что моя легенда теперь отсутствует.У кого-то еще есть эта проблема ??

Я получаю следующую ошибку:

o не определено в строке dojo.js 73

Эта ошибка возникает, когда

chart1.render ();// График показывает, но ошибка приводит к тому, что остальная часть кода в этой функции javascript не выполняется (поэтому не легенда, потому что она создана после выполнения chart1.render (); строка.

. Отлично работает в выпуске 1.4.3.

Ответы [ 2 ]

0 голосов
/ 30 июля 2010

Обнаружена проблема .. Вроде ошибка, но не уверен на 100% ... Вот как ее воссоздать, используя код Dojo Nightly Charting Tests и версия dojo 1.5.0 (любой веб-браузер):

ПРИМЕЧАНИЕ : эта ошибка возникает при добавлении серии для построения графика "other" и вызове chart1.render (); больше чем единожды. If chart1.render (); вызывается только один раз, ошибки нет и все работает как надо. См. AddSeries для «Series B» ... Удалите plot: «other» из «Series B», и все работает нормально, даже если chart1.render () вызывается дважды. Эту проблему можно также воссоздать, просто удалив «markers: true» из «default» addPlot и вызвав char1.render (); в два раза.

Предупреждение : HTML-код ниже в разделе кода отображается неправильно на 100%, но присутствует весь код javascript, чтобы легко воссоздать эту проблему.

Евгений : Спасибо за ссылку на страницу тестирования, которая выручила. Кроме того, я должен подать отчет об ошибке на этом ??


    




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);




<h1>Event 2D</h1>
Go</p>-->
<p>Hover over markers, bars, columns, slices, and so on.</p>
<p>1: Markers, lines, 2D data, custom axis. Actions: Magnify, Tooltip.</p>




<p>That's all Folks!</p>




0 голосов
/ 29 июля 2010

Диагностические тесты работают на вас?Перейдите к Dojo Nightly Charting Tests и выберите тест, который использует всплывающие подсказки, например, test_event2d.html .Если это работает для вас, посмотрите, что отличается в вашей настройке.Если вы нашли разницу и она связана с Dojo, пожалуйста, сообщите об ошибке .Не забудьте упомянуть браузер, который вы используете, и прикрепить минималистичный тестовый пример в виде файла.

...