Как установить цвета для отдельных надписей в легенде (jqplot)? - PullRequest
1 голос
/ 15 июня 2011

Я использую jqplot для построения графика на странице. Я строю несколько линий и мне нужно отобразить легенду, которая поможет идентифицировать линии.

Линии имеют разные цвета, поэтому мне нужно найти способ задания кол-ва отдельных меток, отображаемых в легенде.

  var plot3 = jQuery.jqplot('div1', [data1, data2, data3, data4],
    {
      // Series options are specified as an array of objects, one object
      // for each series.
      series:[
          {
            color: '#FF0000',
            // Change our line width and use a diamond shaped marker.
            lineWidth:2,
            markerOptions: { style:'diamond' }
          },
          {
            color: '#00FF00',
            // Don't show a line, just show markers.
            // Make the markers 7 pixels with an 'x' style
            showLine:false,
            markerOptions: { size: 7, style:"x" }
          },
          {
            color: '#0000FF',
            // Use (open) circular markers.
            markerOptions: { style:"circle" }
          },
          {
            color: '#F0000F',
            // Use a thicker, 5 pixel line and 10 pixel
            // filled square markers.
            lineWidth:5,
            markerOptions: { style:"filledSquare", size:10 }
          }
      ],

legend:{
           renderer: jQuery.jqplot.EnhancedLegendRenderer,
           show: true,
           labels: ['data1', 'data2', 'data3', 'data4']
        }
    }

[Изменить]

Я удалил предыдущий код - так как это была красная сельдь. Я также изменил название, чтобы отразить новый способ решения проблемы после нескольких дней борьбы с ним.

Ответы [ 2 ]

5 голосов
/ 15 июня 2011

После легенды, пожалуйста, добавьте это так:

legend: {show: true } , 
series:[{label:'BANANA'}, {label:'ORANGE'}  ],  

Это даст вам имя легенды.

0 голосов
/ 29 сентября 2016

Вы можете установить цвет для серии и легенды, используя seriesColors следующим образом:

var plot1 = $.jqplot('chart', [data1, data2], {
legend: {
    show: true
},
seriesColors: ['red', 'blue']
});
...