2016-07-12 6 views
0

Итак, у меня есть эта диаграмма столбцов, и я хотел бы иметь цвета, основанные на названии категории. Чтобы быть более ясным, мой граф что-то вроде этого:amCharts select property value

category 1 [][][][][][] 
category 2 [][][][][][][][][][][] 
category 3 [][][][] 
category 4 [][][][][][][][][] 

Я использую dataloader предоставить данные из Ajax запроса.

Я думал, что делать что-то вроде следующего:

 "graphs": [{ 
      "balloonText": "<span style='font-size:13px;'>[[title]] [[category]]s:<b>[[value]]</b></span>", 
      "title": "Total", 
      "type": "column", 
      "fillAlphas": 0.8, 
      "fillColors": "color", <------------------------- 
      "valueField": "total" 
     }], 

if (category.value == "category3") { 
    var color = "red" 
} ... 

Ну, я предполагаю, что вы получили эту идею. Дело в том, что я новичок, когда речь заходит о программировании и js специально. Кто-нибудь знает, как я могу это решить?

ответ

0

Вы можете добавить «цвет» к объектам данных, как это:

data = [{"category":"category3","total":"totalValue","color":"red"},...] 

и в вашем использовании графе «fillColorsField» вместо fillColors, как это:

"graphs": [{ 
      "balloonText": "<span style='font-size:13px;'>[[title]] [[category]]s:<b>[[value]]</b></span>", 
      "title": "Total", 
      "type": "column", 
      "fillAlphas": 0.8, 
      "fillColorsField": "color", <------------------------- 
      "valueField": "total" 
     }], 

Это демо может быть Полезное: https://www.amcharts.com/demos/column-with-rotated-series/

+0

Прежде всего, спасибо за ваш ответ! Но я видел этот пример, проблема в том, что я использую dataloader для получения моих данных, поэтому мои данные поступают из запроса ajax, прямо из моего db. Могу ли я добавить дополнительную информацию в свой арай после вызова db, прежде чем отправлять данные на мой взгляд? – Lberteh

+0

Я думаю, вы можете использовать цикл for, а затем прикрепить к нему «цветное» поле. for (var i = 0; i LoneGunMan

+0

спасибо, я попробую это , Я дам вам знать, если это сработает. – Lberteh