Cómo conseguir dojox.gráficos de etiquetas irregular (por ejemplo.31, 28, 31... etc) los valores?

StackOverflow https://stackoverflow.com/questions/5318602

  •  24-10-2019
  •  | 
  •  

Pregunta

Estoy tratando de utilizar dojox.gráficos a la salida de un simple gráfico de los datos mensuales.

Por ahora, quiero que se muestre un punto por cada día de cada mes, para una duración de un año.Este que yo trabajo.

El problema con esto es:No puedo encontrar una manera de agregar las etiquetas de gráfico para cada mes.

Quiero "enero" en 0, "febrero" 31, "Marzo", en el 59, y así sucesivamente.

Como lo que yo puedo decir, dojox.gráficos sólo admite las etiquetas de regular los valores, por ejemplo.30, 60, 90 y así sucesivamente.

Hay alguna manera en que me puede hacer esto fácilmente, o está cambiando dojo del código necesario?

Por favor, consulte esta jsfiddle por ejemplo: http://jsfiddle.net/svjrz/

¿Fue útil?

Solución

Dojox. El cambio aún no admite Timeseries.

Cuando necesito presentar datos irregulares (como mensualmente), generalmente interpolo los datos diarios para presentarse en escala mensual con garrapatas regulares (enero, febrero, etc.) como una tabla de línea/área (puede probar las splines allí). Y cambio a la vista semanal/diaria cuando el usuario profundiza.

Sí, es más trabajo, pero el resultado es exactamente lo que quiero, en lugar de "lo que está disponible".

Otros consejos

Yo siempre que sea posible solución en este post.

Basado en el tiempo de gráficos requiere relleno no contiguos de datos.

Usted necesita para generar la serie completa de valores de fecha para el eje X en SQL o PHP.Estoy usando MySQL, el truco de un calendario de mesa con un campo de FECHA, y un procedimiento para rellenar con todas las fechas en un rango.JavaScript puede convertir ISO fechas directamente.

Su dispersos datos pueden ser de salida como un intervalo de tiempo de series basadas en el uso de:

SELECT DISTINCT(t0.datefield) AS Date, SUM(t1.sales) AS Sales FROM T_Sales AS t1 RIGHT JOIN T_Cal AS t0 ON t0.datefield = DATE(t1.saledate) WHERE t0.datefield >= DATE(NOW() - INTERVAL 6 MONTH) AND t0.datefield <= DATE(NOW())
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top