2012-09-04 9 views
9

He creado un gráfico de barras apiladas de Flot pero los bloques no parecen apilarse, todos comienzan en 0 (en la parte inferior del gráfico).Flot apiló el gráfico de barras no apilando

Flot chart

Los valores de los 4 bloques son:

  • brillante verde - 1
  • Purple - 28
  • Red - 83
  • Verde claro - 195

Si se apiló correctamente debería estar a una altura de 307. ¿Alguna idea de lo que está mal?

drawLineChart: function(el,data,ticks,labelstr) { 
     var plot = $.plot(el, data, { 
     series: {stack: true, 
      lines: {show: false, steps: false}, 
      bars: {show: true, barWidth: 0.4, align: 'center'} 
     }, 
     xaxis: { 
      ticks: ticks 
     }, 
     yaxis: { 
      min: 0, 
     }, 
     grid: { 
      color: '#aaa', 
      borderWidth:0, 
      axisMargin:0, 
      hoverable: true, 
      autoHighlight: false 
     }, 
     legend: { 
      show: true, 
      position: "ne", 
      noColumns: 1 
     } 
     }); 
    } 

Respuesta

8

El problema más probable es que no haya incluido el plugin de pila después de flot. En su etiqueta de la cabeza, debe tener algo como esto:

<!--[if lte IE 8]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]--> 
<script language="javascript" type="text/javascript" src="../jquery.js"></script> 
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script> 
<script language="javascript" type="text/javascript" src="../jquery.flot.stack.js"></script> 

La clave en este caso es que la última etiqueta script.

Más allá de eso, no estoy seguro de cuál sería el problema. Ejecuté sus opciones y todo se veía bien. See it in action here.

+1

Definitivamente tenía el archivo stack.js incluido ... Comprobé que se estaba cargando a través de Firebug e informó HTTP 200. He perdido horas en esto. ¡Podría cambiar a Google Charts en su lugar! – RichW

+0

@RichW - debe estar ocurriendo algo más, ¡porque claramente su código funciona! Supongo que la otra posibilidad es que haya algo extraño en sus objetos de datos. ¿Tal vez pueda editar algunos objetos de datos de ejemplo en su pregunta? – Ryley

5

Me encontré con el mismo problema con Flot y tratando de mostrar los gráficos de barras apiladas. Descubrí que en mi caso fue causado porque la serie no está ordenada por fecha ascendente.

Después de ordenar por fecha ascendente, la serie comenzó a apilarse correctamente.

También me he encontrado en la misma situación que usted cuando hay valores negativos que deben apilarse. Esto no es compatible con el plugin de pila nativo. Puede buscar aquí un plugin alternativo para apilar valores negativos en un bar chart

+0

Buen plugin. Funciona bien con otros plugins de flot también. – ChiMo

Cuestiones relacionadas