2016-10-15 2 views
0

Я создал Google круговой диаграммы, используя следующий код:использование переменных в Google Chart Options Javascript

var data = google.visualization.arrayToDataTable(array); 
var options = { 
    title: 'Meta Share', 
     is3D: true, 
     sliceVisibilityThreshold: .04, 
     slices: { 6 : {offset: 0.2}, 
     }, 
    }; 

    var chart = new google.visualization.PieChart(document.getElementById('chart_div')); 
    chart.draw(data, options); 
} 

Я хочу, чтобы выбрать кусочек круговой диаграммы динамически в зависимости от того, что делает мой пользователь. теперь у меня есть следующий код:

var slice = 8; 

Теперь я хотел бы использовать эту переменную в коде выше, однако; замена «6» на «срез» переменной не работает.

Любые предложения? :)

ответ

1

Вы не можете использовать переменные в качестве ключей в литералах объектов, вы должны сначала создать объект, а затем использовать скобки, чтобы использовать переменный в качестве ключевого

var slice = 8; 
var slices = {}; 

slices[slice] = {offset: 0.2}; 

var data = google.visualization.arrayToDataTable(array); 
var options = { 
    title : 'Meta Share', 
    is3D : true, 
    sliceVisibilityThreshold : .04, 
    slices : slices 
}; 

var chart = new google.visualization.PieChart(document.getElementById('chart_div')); 
    chart.draw(data, options); 
} 
+0

Или с [названием рассчитывается недвижимости ] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Computed_property_names): 'var slice = 8, slices = {[slice]: {offset: 0.2}} ' – Andreas

+0

@ Andreas - да, я их люблю, но в настоящее время они работают только в Chrome и FF. – adeneo

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