sábado, 23 de enero de 2010

Escalas en ejes de gráficos.

Días atrás expliqué brevemente cómo trabajar con ejes secundarios para un gráfico; hoy intentaré resolver la consulta de un lector:
...Estoy trabajando en un gráfico similar (facturación vs. empleados). El problema es que cuando la facturación queda en negativo, el valor 0 del eje secundario coincide con el menor valor del eje principal; entonces a veces ocurre que el número de empleados queda por debajo del eje principal y queda raro, como si hubiese un número negativo de personas.
¿Existe alguna manera de hacer coincidir el valor 0 de los dos ejes verticales con el eje horizontal?...

La pregunta parece clara, es decir, si tenemos dos series de datos en nuestro gráfico, y hemos optado por mandar una de ellas al eje secundario, ¿que ocurre si una de las series tiene valores negativos?. La respuesta es que tendremos que modificar las escalas del eje.
Supongamos, a modo de ejemplo, las siguientes series:

Escalas en ejes de gráficos.


Vemos que nuestros datos reunen las condiciones para que podamos enviar una de las series, por ejemplo, 'Empleados' al eje secundario:

Escalas en ejes de gráficos.


He remarcado las zonas conflictivas, en el eje principal la serie de datos 'Facturación' nos muestra en negativo uno de los valores, empezando el eje vertical por un valor negativo, lo que da una sensación extraña al mirar el eje secundario, ya que parece que hay un valor de la serie 'Empleados' que también es negativo (aunque sepamos que debemos mirar no hacia el eje principal si no al secundario... como explicaba el usuario). Entonces, ¿existe alguna manera de hacer coincidir el valor 0 de los dos ejes verticales con el eje horizontal?.
Bueno, seguro que existen muchas y variadas, pero he elegido una muy sencilla que no requiere grandes reformas. Simplemente vamos a modificar la escala del eje secundario.

En primer lugar seleccionaremos dentro del gráfico el Eje secundario Vertical que vamos a modificar, después buscamos 'Dar formato a eje', bien con el botón derecho del ratón o bien desde el menú 'Herramientas de gráficos':

Escalas en ejes de gráficos.


El siguiente paso es cambiar en la ventana diálogo que vemos la Escala, en concreto el valor de 'Mínimo', es decir, el valor del eje secundario vertical por el que empieza; para igualarlo en proporción al eje principal, quiero decir, si los valores del Eje principal comienzan con -200 y su unidad de graduación es de 200; nosotros para el eje secundario vertical aplicaremos proporcionalmente los mismos valores, esto es, comenzaremos por el valor mínimo -2 e incrementaremos la graduación en 2.
Debera quedar configurado así:

Escalas en ejes de gráficos.


Hemos conseguido nuestro objetivo, hacer coincidir el valor 0 de los dos ejes verticales con el eje horizontal, tan solo modificando ligeramente la Escala correcta.

Escalas en ejes de gráficos.

18 comentarios:

  1. Buenos días,

    No sé si es el lugar adecuado para preguntar esto, relacionado con las escalas de los ejes, pero no he encontrado nada parecido por internet.

    El caso es que estoy utilizando Excel 2003 para trazar gráficos con datos obtenidos en experimentos, en escala logarítmica. Cada vez que aparece un dato negativo, sale una ventana indicándome que son incompatibles con escala logarítmica (obvio). He cambiado el rango de datos para descartar los datos negativos, pero la ventanita sigue saliendo (???!!!)

    ¿Hay alguna forma de evitar que me salga la ventana? Aparte de que los negativos son irrelevantes para lo que quiero de la gráfica, la ventanita lo único que hace es ralentizar mi trabajo.

    Muchas gracias,


    Alex

    ResponderEliminar
  2. Hola Alex,
    si el error (la ventana) sigue saliendo es que claramente aún te queda algún valor en el origen de datos que sea cero o negativo.

    Se me ocurre que podrías convertir tu origen de datos en una Lista (seleccionar el origen y presionar Crtl+q), y en base a las características de las Listas, emplear el filtro de éstas para discriminar los valores ceros o negativos (i.e., te quedas sólo con los positivos); y sobre esa Lista construyes el gráfico que quieras. Lo bueno es que están vinculado gráfico y Lista filtrada.
    Creo te puede servir.
    Slds
    P.D.: Hay varios post en el blog explicando el uso de Listas o Tablas.

    ResponderEliminar
  3. Hola,
    tengo un problema con las escalas. Resulta que quiero que en el eje Y me aparezca incrementos de un orden de magnitud cada vez (1E+12, 1E+13, 1E+14, etc.)y no soy capaz de hacerlo con la opción unidad mayor, alguien me puede ayudar por favor?
    Gracias de antemano

    ResponderEliminar
    Respuestas
    1. Hola Juan,
      creo que lo más indicado en el caso que planteas, de ir incrementando el eje Y en magnitudes x 10, sería aplicar la Escala logarítmica a ese eje desde Formato de eje.
      Slds

      Eliminar
  4. Hola, muy buenas y gracias por adelantado por la ayuda.

    Necesitaría construir un gráfico con 2 ó 3 series, en las que una de las series sea de barras (horizontales, no columnas) y las otras series en formato de líneas. Sería un gráfico combinado. El problema es que cuando intento cambiar el tipo de gráfico en las serie 2ª o 3ª, me pone la línea en horizontal y no en vertical. Lo mismo ocurre si selecciono el tipo de gráfico como área.
    ¿alguna idea al respecto?. Un saludo

    ResponderEliminar
    Respuestas
    1. Hola,
      he replicado lo que expones y a mi si me realiza el gráfico según lo comentado, esto es, una de las dos series en barras horizontales (siguiendo el eje X secundario) y la otra serie tipo línea (según el eje Y principal).
      Si no te funciona bien, asegúrate que sólo seleccionas las series individuales, antes de cambiarles el tipo, y que no estás seleccionando la totalidad del gráfico.
      Si no te funciona, a pesar de esto, envíame un correo a:
      excelforo@gmail.com
      Slds

      Eliminar
  5. Buenas tardes. Quisiera preguntar una cosa relativa a un grafico que tengo que hacer y me tiene empantanado.
    Necesito realizar un grafico en el que se correlacionen la evolución de consumo de energia (eje de ordenadas Y) con la evolución de la renta per cápita (eje de abscisas x) de 20 paises calculando su media y representandola en el grafico. Cuando inserto el grafico de dispersion el eje Y muestra los valores porcentuales de la media aritmetica de cada pais pero el eje horizontal muestra el numero de paises (20) y si cambio formato al eje intentando que sea igual al eje Y me ammontona todos indicadores porqué, supongo, sigue basado en la cantidad de paises y no en los valores porcentuales.
    No se si me he explicado bien. Gracias de antemano por la colaboración.

    ResponderEliminar
    Respuestas
    1. Hola!!
      mejor envíame a
      excelforo@gmail.com
      lo que tengas, y me hago una idea mejor.
      Cuando lo vea te comento.
      Slds

      Eliminar
    2. Gracias, te envio una copia ahora mismo. Gracias por tu rapidez e interes.
      Marco.

      Eliminar
  6. JUSTO LO QUE BUSCABA, MAGNIFICO GRACIAS

    ResponderEliminar
  7. Hola,
    Gracias por la disponibilidad. Escribo porque estoy haciendo un gráfico de línea en Excel (serie de tiempo), y me surge un problema cuando intento añadir una segunda serie en el mismo gráfico: los valores de la segunda serie no se corresponden con los del eje vertical. En particular, intento graficar la evolución del PBI per cápita de dos paises (EEUU y Argentina) y del mundo, y me queda la serie de Argentina por encima de la de EEUU (absurdo). He tratado de encontrar una solución, pero no lo puedo cambiar. Espero me puedas ayudar y nuevamente agradezco tu disponibilidad.
    Saludos

    ResponderEliminar
  8. Ya encontre la solución, me había imaginado que era algo "tonto", y lo era efectivamente. Disculpas y saludos.

    ResponderEliminar
    Respuestas
    1. Gracias a ti!
      me alegra dieras con la solución.
      Cordiales saludos

      Eliminar
  9. Buenas,

    Tengo una consulta, ocupo hacer un gráfico combinado (barras y líneas) pero con diferentes escalas. Por ejemplo los primeros tres datos son 116, 60 y 20 y deben presentarse en columnas y los siguientes cuatro datos son 23, 19, 15, 17 y deben presentarse en línea y el último dato que es 29 debe presentarse en barra. No se si me explique, pero es un problema que no logro resolver!! (tengo una imagen del tipo de gráfico que describo pero no se como incluirla) Mil Gracias

    ResponderEliminar
    Respuestas
    1. Hola Mariela,
      me imagina que inicialmente todos esos valores pertenecen a un mismo campo (o serie de datos); para conseguir lo que quieres. yo dividiría en tres series diferentes según conjuntos de valores y tipos de gráficos... quizá respondan esas agrupaciones en tres series nuevas a alguna condición y por tanto puedas hacerlo con alguna fórmula.
      Puedes ver un ejemplo similar en
      http://excelforo.blogspot.com.es/2010/11/grafico-de-barras-en-excel-condicionado.html

      Una vez separadas en tres series, construyes el gráfico y seleccionando cada serie podrás optar por un Tipo de gráfico u otro...

      Espero te sirva.
      Slds

      Eliminar
  10. Hola, te comento la duda:

    tengo un eje x con los siguientes valores:1 1,05 1,15 1,20 10 20 30 40...,quiero que el gráfico salga a escala real, es decir, que no haya la misma distancia entre el 1 y el 1,05 y el 10 y el 20.

    Gracias de antemano

    ResponderEliminar
    Respuestas
    1. Hola,
      en estos casos tendrás que 'engañar' a Excel indicando valores no reales (con un =NOD() ) para que te ocupe esos espacios...
      lo que ocurriría es que tu eje sería muy grnade, ya que partirlo en intervalos de 0.05 (la mínima unidad), haría el eje interminable para mostrar sólo 8 valores.
      No creo haya una solución sencilla al problema...

      Un cordial saludo

      Eliminar

Nota: solo los miembros de este blog pueden publicar comentarios.