2013-12-09 2 views
2

Я использую Dojo для создания альтернативного графика на событии нажатия предыдущей диаграммы.Сформировать динамическую круговую диаграмму на событии щелчка на сложенную диаграмме линии В додзе

Во-первых, я рисую сложную линейную диаграмму (скажем для клиентов) и, щелкнув одну из строк, мне нужно нарисовать другую круговую диаграмму для получения дополнительной информации об этом Клиенте (например, о доходах от этого клиента). Все это происходит для одной линейной диаграммы.

Здесь Проблема заключается в том, чтобы найти идентификатор для этой конкретной линии, теперь я получаю массив идентификаторов для всех построенных линий. Следующий график рисуется для трех Клиентов.

enter image description here И После я представляю мой код:

var colorArray =["#2cabe2","#57E964","#736AFF","#B93B8F","#151B8D","#EE9A4D",...]; 
for(var i =0 ; i<length ; i++) 
     { 
     chart.addSeries(response.legend + " "+ i,response.data[i],{color: colorArray[i]}); 
     } 

chart.connectToPlot("default", function(evt) { 
     var shape = evt.shape, type = evt.type; 
     if (type == "onclick") { 
      url="/ritl/chart/getProcessPieData.htm?customerId="+dijit.byId('customerId').get('value'); // url to the next (pie) chart in the same jsp. 
      processPie(url);   // calling function for pie Chart 

     } 
    }); 

Ответ Данные в виде JSONArray. JSON:

{"data":[[{"text":"January","value":1,"customerID":"RITL00013","y":0},{"text":"February","value":2,"customerID":"RITL00013","y":0},{"text":"March","value":3,"customerID":"RITL00013","y":0},{"text":"April","value":4,"customerID":"RITL00013","y":0},{"text":"May","value":5,"customerID":"RITL00013","y":0},{"text":"June","value":6,"customerID":"RITL00013","y":0},{"text":"July","value":7,"customerID":"RITL00013","y":0},{"text":"August","value":8,"customerID":"RITL00013","y":0},{"text":"September","value":9,"customerID":"RITL00013","y":0},{"text":"October","value":10,"customerID":"RITL00013","y":119951.2},{"text":"November","value":11,"customerID":"RITL00013","y":430827.04},{"text":"December","value":12,"customerID":"RITL00013","y":0}],[{"text":"January","value":1,"customerID":"RITL00002","y":0},{"text":"February","value":2,"customerID":"RITL00002","y":0},{"text":"March","value":3,"customerID":"RITL00002","y":0},{"text":"April","value":4,"customerID":"RITL00002","y":0},{"text":"May","value":5,"customerID":"RITL00002","y":0},{"text":"June","value":6,"customerID":"RITL00002","y":0},{"text":"July","value":7,"customerID":"RITL00002","y":0},{"text":"August","value":8,"customerID":"RITL00002","y":0},{"text":"September","value":9,"customerID":"RITL00002","y":0},{"text":"October","value":10,"customerID":"RITL00002","y":41996.52},{"text":"November","value":11,"customerID":"RITL00002","y":566353.8099999999},{"text":"December","value":12,"customerID":"RITL00002","y":0}],[{"text":"January","value":1,"customerID":"RITL00016","y":0},{"text":"February","value":2,"customerID":"RITL00016","y":0},{"text":"March","value":3,"customerID":"RITL00016","y":0},{"text":"April","value":4,"customerID":"RITL00016","y":0},{"text":"May","value":5,"customerID":"RITL00016","y":0},{"text":"June","value":6,"customerID":"RITL00016","y":0},{"text":"July","value":7,"customerID":"RITL00016","y":0},{"text":"August","value":8,"customerID":"RITL00016","y":0},{"text":"September","value":9,"customerID":"RITL00016","y":0},{"text":"October","value":10,"customerID":"RITL00016","y":132784.45},{"text":"November","value":11,"customerID":"RITL00016","y":571506.6},{"text":"December","value":12,"customerID":"RITL00016","y":0}]],"Success":true,"dataLength":3} 

Как определить индивидуальный идентификатор для линии в приведенной выше таблице. Предложите мне выйти из этой ситуации. Заранее спасибо за активных предложений ..

ответ

1

А что-то вроде следующего в вашем connectPlot обратного вызова:

event.run.data[event.index].customerID 
+0

Благодаря человеку, его работы .. Вот [event.index] возвращая индекс оси х, но данные [event.index] undefined без event.run ?? –

+0

У меня снова возникла проблема в строчной линейной диаграмме. для этого вы можете перейти по ссылке ... http://stackoverflow.com/questions/21250642/dojo-addseries-method-in-a-loop-ploting-a-graph-with-commulative-sum Спасибо заранее .. –