2010-11-10 14 views
11

Próbuję ustawić kolory moich pasków wykresu słupkowego jqplot. Zawsze będzie obecnych sześć pasków pogrupowanych w zestawy po 2 paski. Oto przykład dane są wykreślane:Jak ustawić kolory wykresów słupkowych jqplot na pasek?

line1 = [6000, 5000, 5500]; 
line2 = [16000, 10000, 14000]; 

Użyłem następujących dotąd:

seriesColors: ["#F3CBBF", "#BFDDE5", "#CF3501", "#027997", "#CF3501", "#027997"], 

Ale jqplot naprzemiennie pierwszych 2 barów każdym razem zamiast używać wszystkich deklarowana zabarwienie. Jest tak prawdopodobnie dlatego, że określa tylko obecność dwóch serii, po jednej na zbiór danych.

Czy istnieje sposób wyraźnego ustawienia kolorów paska?

Odpowiedz

28

Robię to za pomocą varyBarColor method, dzięki czemu można wyświetlić różne kolory dla prętów w prostej tablicy, jak to już zrobiliście, ale jeśli jest tylko jedna seria, zamiast tego będą używać tych kolorów dla każdego paska. Oto przykład mojego kodu:

plot1 = $.jqplot('chart1', [s1], { 
     title: 'Example Income Graph', 
     seriesDefaults:{ 
      renderer:$.jqplot.BarRenderer, 
      rendererOptions:{ varyBarColor : true }, 
      pointLabels: { show : true } 
     }, 
     axes: { 
      xaxis: { 
       renderer: $.jqplot.CategoryAxisRenderer, 
       label:'Net Growth (%)', 
       ticks: ticks 
      }, 
      yaxis:{ 
       label:'Income (£)', 
       tickOptions:{ formatString:'%d'}, 
       autoscale:true, 
       min:0, 
       max:10000 
      } 
     }, 
     seriesColors: [ "#eee", "#ccc", "#999"], 
     highlighter: { show: false } 
    }); 

Na tym wykresie miałem jedną serię z 3 kreskami i każdy ma inny kolor szary.

+3

ta odpowiedź nie wyjaśnia, w jaki sposób osiągnąć to, o co poprosiło TO. Jego pytanie dotyczyło wielu serii i ręcznego określania kolorów poszczególnych pasków. – beercan

+0

Dzięki za odpowiedź –

3

To jest dość stare, ale wciąż nie ma prawidłowej odpowiedzi, a zajęło mi trochę czasu, aby to zrozumieć, więc tutaj jest.

trzeba dwie rzeczy: Ustaw varyBarColor i tablicą seria, która zawiera kolory serii dla każdej serii, przeszedł na tym samym poziomie co seriesDefaults, takich jak:

plot1 = $.jqplot('chart1', [s1, s2], { 
      title: 'Example', 
      seriesDefaults:{ 
       renderer:$.jqplot.BarRenderer, 
       rendererOptions:{ varyBarColor : true }, 
       pointLabels: { show : true } 
      }, 
      series: [{seriesColors: ["#F3CBBF", "#BFDDE5", "#CF3501"]}, 
        {seriesColors: ["#027997", "#CF3501", "#027997"]}] 
      } 
-1

spróbować jak to

series:[{renderer:$.jqplot.BarRenderer , seriesColors: ["#F3CBBF", "#BFDDE5", #CF3501","#eee", "#ccc", "#999"] }] 
Powiązane problemy