2016-07-12 7 views
0

私はこの縦棒グラフを持っており、カテゴリ名に基づいて色を付けたいと思います。もっと明確にするために、私のグラフは次のようなものです:amChartsプロパティ値を選択

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

あなたは、このようなデータオブジェクトへの「色」を追加できます。

"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" 
     }], 

このデモでは使用できます。このように、代わりにfillColorsので

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

とあなたのグラフの使用「fillColorsField」で便利:https://www.amcharts.com/demos/column-with-rotated-series/

+0

まず、お返事ありがとうございます! しかし、私はこの例を見てきました。問題は私のデータを取得するためにデータローダーを使用していることです。データは私のdbから直接取得したajaxリクエストから得られます。私のビューにデータを送る前に、dbコールの後に私のarayに情報を追加することはできますか? – Lberteh

+0

私はforループを使い、オブジェクトに "color"フィールドを付けることができると思います。 (配列[i] .category == 'category3')array [i] .color = "red";} – LoneGunMan

+0

ありがとう、私はそれを試してみます。それが動作するかどうかを知らせます。 – Lberteh