money left highchart font family data chart align highcharts logarithm

left - highcharts title font family



Highcharts: otras configuraciones para el eje y. Tratando con grandes nĂºmeros (2)

He usado algunas ecuaciones matemáticas para reducir las brechas entre los puntos y todavía mostrar la diferencia relativa gráficamente. Para hacer esto, proceso los datos en el servidor y si un punto es drásticamente diferente de otro, entonces usaré una raíz cuadrada de ambos. Aquí hay un par de ejemplos que demuestran esto:

VALORES: 220, 110, 55, 5

VALORES: 1100, 220, 110, 55, 5

Los datos se envían como la raíz cuadrada redondeada al tercer decimal. Luego uso el formateador en la etiqueta yAxis y la información sobre herramientas para mostrar los valores adecuados. Además, me estoy asegurando de que la etiqueta se muestre como un número entero mediante el uso de parseInt .

Tengo algunas dificultades para tratar de gestionar / trazar grandes números en el eje y en combinación con números pequeños.

Los ejemplos están aquí para ambos tipos de eje y: http://jsfiddle.net/index/6FBec/1/

Para el primer gráfico (lineal): el problema es que los números pequeños se trazan casi planos en la parte inferior.

Para el segundo gráfico (logarítmico): Donde como aquí (esto es realmente mejor), cuando el número grande es demasiado grande, la brecha para el próximo tic está lejos (el último punto 12,250 y el eje y más grande es 100,000).

La pregunta es, ¿hay un tipo de eje y diferente o cómo puedo hacer algo como lineal pero cuando hay algo demasiado grande haría algo así como logarítmico como usar brechas más pequeñas primero y luego crecer?

PD: No importa el valor 0.1. Temp para valores logarítmicos que no desean 0.


Sugiero encarecidamente que se adhieran a lo lineal o logarítmico, ya que estos son tipos de estándares y serían intuitivos para el usuario. Estos dos son la mayoría de las necesidades de visualización. Los datos que está trazando en su ejemplo, ¿son datos de producción? ¿Es así como tus datos van a ser siempre, o solo un caso aislado? La forma más fácil de determinar qué eje usar es encontrar la variación o Desviación estándar o sus datos, si es de uso pequeño lineal, si su gran uso es logarítmico (el umbral de pequeño y grande puede modificarse en función de sus datos).

Yo diría que las visualizaciones que tienes en jsFiddle son más o menos lo que deberías usar.

1) Lineal Ves un punto de datos disparándose, y otros son casi (en comparación con el más grande en términos de%) el mismo valor. Entonces debería mostrarlo como tal, esto le da al usuario una pista de que algo está terriblemente mal. Si intenta hacer que la curva se vea bien , el usuario siempre tendrá que referirse a los valores y no podrá hacer inferencias simplemente mirando el gráfico, este es el propósito de los gráficos. No tendrá mucho sentido simplemente un buen gráfico cuando el usuario tendrá que pasar por la molestia de mirar manualmente los valores de los puntos de datos para hacer inferencias rápidas.

2) Logarítmico Cuando sus datos están realmente sesgados, pero hay bolsillos / grupos de datos (no solo un punto es un valor atípico), elija este.

Si necesita usar alguna otra escala (entienda primero los datos de producción, de lo contrario acabará embelleciendo los datos de prueba y desordenará los datos reales) use algún estándar similar como raíz cuadrada o cuadrada en la respuesta de @Dan Thomas o La mejor manera es, si es posible, obtener una ecuación genérica (no real, pero ideal para los datos sería) para sus datos. Entonces, si tus datos son como y=A*x 2 + Bx + C , ve por cuadrado, si es de la forma y=A*x + B ve por lineal, si y=A*log+(x)+B ve para logarítmico y así sucesivamente

Más @ http://www.forbes.com/sites/naomirobbins/2012/01/19/when-should-i-use-logarithmic-scales-in-my-charts-and-graphs/