2014-02-03 3 views
0

И с помощью этой библиотеки:Canvasexpress: передать переменный как свойство

http://canvasxpress.org/scatter2d.html

теперь я пытался построить Scatter2D диаграмму, используя следующий код:

var showDemo2 = function (chartrows,chartvars,chartdata,colors,color) { 
      $("#c2").show() 
      $("#c1").hide() 

     cx2 = new CanvasXpress('canvas2', 
      { 

      'y' : { 
       'vars' : chartrows, 
       'smps' : chartvars, 
       'data' : chartdata, 

      }, 
      'z' : { 
       'color' : colors, 

      }, 

      }, 
      { 
      'graphType': 'Scatter2D', 
      "colorBy":'color', 
      'xAxis': [chartvars[0]], 
      'yAxis': [chartvars[1]]} 
     ); 



     } 

Это прекрасно работает , но проблема в том, что «z», когда я пытаюсь передать переменную, код автоматически ее строчит, например, если «z» был таким:

'z' : { 
       somevariable : colors, 

      } 

«somevariable» по-прежнему передается как строка, у меня есть сокращенный код, и очень сложно найти часть, в которой исходный разработчик строит свойство, любое решение для обхода преобразования строк? попробовал eval(), но напрасно.

ответ

0

после осмотра холста я обнаружил, что каждый холст имеет объект под названием «данные», в данной, которые вы можете найти «у» и «Z», просто изменил имя г свойства к моему желаемому значению:

cx2.data.z[color]=cx2.data.z.color 
     delete cx2.data.z.color; 

где «цвет» на левой стороне является переменной, но с правой стороны была строка. Приветствия.

Смежные вопросы