Traducir el blog

Cómo hacer un gráfico solar

Posted on mayo 15, 2022 by Excel Pedro Wave

En el artículo anterior presenté un gráfico solar simulado en la nube. En este artículo explico cómo hacerlo paso a paso.

Con unos cuantos nombres definidos se crean las series del gráfico combinado con:

  • 2 gráficos radiales rellenos para los rayos solares. 
  • 3 gráficos de anillo para las etiquetas.

Y también podrás descargar un gráfico solar como el de esta imagen:


Descargar este gráfico solar

Puedes descargar este gráfico solar v2.0 desde estos enlaces:

Abre la plantilla con una versión de Excel de escritorio igual o superior a Excel 2013 y presiona el botón: Habilitar edición

Aparece una ADVERTENCIA DE SEGURIDAD: Las macros se han deshabilitado. Presiona el botón: Habilitar contenido

Esta plantilla contiene macros y no está protegida, por lo que se pueden estudiar y analizar las fórmulas y el código VBA y el gráfico solar.

IMPORTANTE: Gracias a un par de macros, se copia automáticamente la curva horaria PVPC de un día cualquiera desde el archivo de mi artículo anterior, que debes colocar en el mismo directorio que el gráfico solar. Puedes descargarlo desde aquí:

Gráficos PVPC Electricidad España | #ExcelPedroWave


Cómo hacer un gráfico solar

Lo principal es crear unos cuantos nombres definidos, a partir de la tabla con los datos, con los que se crean las series agregándolas al gráfico, para que tenga la apariencia de un gráfico de proyección solar con los rayos del tamaño de cada valor de la serie.

Para este ejercicio usaremos los datos de las tarifas PVPC de un día, obtenidas de la plantilla del enlace a mi anterior artículo, que he incluido un poco más arriba.

Estos son los pasos a seguir:

1) Abrimos un libro en blanco.

2) Nombramos una hoja vacía con el nombre: Solar

3) Seleccionamos en la cinta de opciones: Vista y en Mostrar, desmarcamos: Líneas de cuadrícula

4) Creamos una tabla, con datos copiados de la plantilla PVPC, en el rango A1:E25, y la llamamos: TablaSolar

5) Cambiamos la cabecera de la columna "PVPC €/MWh" por: Valor

6) Editamos el formato de celdas, con los valores del rango D2:D25, como números sin decimales.

7) Seleccionamos en la cinta de opciones: Fórmulas > Administrador de nombres

8) Creamos 4 nombres definidos con estas fórmulas:

  • miFila: =CELDA("row")-FILA(Solar!$A$1)
  • misRayos: =TablaSolar[Valor]
  • miValorMáx: =SUBTOTALES(104;misRayos)
  • miValorMín: =SUBTOTALES(105;misRayos)


9) Creamos 3 reglas de formato condicional en el rango A2:E25 de la tabla:

  • La regla superior para marcar la hora seleccionada, en color escarlata: RGB(227, 0, 50) y con la fórmula:  =FILA(A2)-FILA($A$1)=miFila
  • La regla para marcar el valor mínimo, en color rojo claro: RGB(218, 150, 148) y con la fórmula:  =$D2=miValorMín
  • La regla para marcar el valor máximo, en color rojo: RGB(255, 0, 0) y con la fórmula:  =$D2=miValorMáx

El resultado en el Administrador de reglas de formato condicionales será así:


10) Probamos a seleccionar una celda de la fila 13 y presionamos la tecla F9, con lo que se marcará esa fila como en esta imagen:


11) Este es el paso más IMPORTANTE:

Creamos unos cuantos nombres definidos seleccionando desde la cinta de opciones: Fórmulas > Administrador de nombres, y presionando el botón: Nuevo..., cada vez que se vaya a crear uno de los nombres definidos.

ADVERTENCIA: Es muy importante el orden de creación de los siguientes nombres definidos, pues los unos dependen de los otros:

    1. miEscala: =REDONDEAR(1,15*miValorMáx;0)
    2. misFilas: =SUBTOTALES(102;misRayos)
    3. matrizFilas: =FILA(INDIRECTO("Solar!1:" & misFilas))
    4. misZonas: =matrizFilas-matrizFilas+1
    5. matrizGrados: =360*(matrizFilas-1)/misFilas
    6. matriz360Grados: =FILA(INDIRECTO("Solar!1:360"))-1
    7. matrizFilasTrans: =TRANSPONER(matrizFilas)
    8. matriz360Rayos: =COINCIDIR(matriz360Grados;matrizGrados;1)
    9. matriz360Rayo: =COINCIDIR(matriz360Grados;matrizGrados;0)
    10. matrizMiRayo: =(matriz360Rayos=miFila)*matriz360Rayos*ESERROR(matriz360Rayo)
    11. matrizRayo: =MMULT(--(matrizMiRayo=matrizFilasTrans);misRayos)
    12. matrizRayos: =MMULT(--(matriz360Rayos=matrizFilasTrans);misRayos)*ESERROR(matriz360Rayo)

   El resultado será esta lista de nombres definidos:


12) Seleccionamos la tabla e insertamos un gráfico radial relleno desde la cinta de opciones: Insertar > Todos los gráficos > Radial > Radial relleno

En este gráfico se aprecian los valores PVPC como líneas quebradas, que es lo que queremos tratar de evitar, pues cada hora de este gráfico no vale lo mismo:

13) Seleccionamos en la cinta de opciones: Diseño de gráfico > Seleccionar datos, quitando las dos series referidas a períodos y dejando únicamente la serie: Valor


14) Modificamos los Valores de la serie: =Solar!matrizRayos, con este nombre definido anteriormente. Es una matriz de 360 filas, con 24 grupos de valores, uno para cada hora, de 15 filas cada grupo, siendo la primera fila un cero, para separar grupos, y las siguientes 14 filas el valor PVPC de esa hora.


15) Eliminamos todo lo que no sea el gráfico y su título, incluso el borde...

¡Y se obra el milagro! ¡Ya es un gráfico solar!
¡En el que cada una de las 24 horas mantienen su valor!

16) Cambiamos el nombre de la serie por: ="Rayos", y en Categoría borramos el rango de rótulos del eje.

17) Agregamos una nueva serie con el nombre: ="Rayo" y los Valores de la serie: =Solar!matrizRayo. No confundirlo con el nombre definido para la serie anterior, éste nombre definido se refiere a un rayo en singular y el otro eran rayos en plural. Es una matriz de 360 filas con todos los valores a cero, excepto las 14 filas de la hora seleccionada, con su valor PVPC.


18) Seleccionamos una celda de la tabla y presionamos la tecla F9. Ahora tenemos en el gráfico 24 rayos, con otro color para el rayo de la fila seleccionada.

¡ESTUPENDO! ¡Aunque aún falta crear 3 anillos con los valores!


19) Creamos tres series: ="Etiqueta Interna", ="Etiqueta Central" y ="Etiqueta Externa", con los mismos valores para las tres series: Solar!MisZonas


20) Hacemos clic con el botón derecho del ratón encima de una serie cualquiera y seleccionamos: Cambiar tipo de gráfico de series...


21) Cambiamos la combinación personalizada de las 3 series de etiquetas a gráficos del tipo anillo, pasando automáticamente al eje secundario esos 3 gráficos, y presionamos el botón: Aceptar


22) Modificamos el color de relleno de los 3 anillos a verde muy claro.

23) Agregamos etiquetas de datos a esos 3 anillos, marcando únicamente: Valor de las celdas. El rango será diferente para cada anillo en: Seleccionar rango...

  • Anillo Exterior: =Solar!$B$2:$B$25 
  • Anillo Central: =Solar!$E$2:$E$25
  • Anillo Interior: =Solar!$D$2:$D$25


24) Cambiamos el tamaño y la negrita de las etiquetas como más nos plazca.

25) Cambiamos el color de los marcadores al gusto del usuario y veremos algo así:


26) Pon un título al gráfico. Si has seguido los pasos anteriores...

¡¡¡ Ya has creado un gráfico solar !!!

27) Usa tus propios datos y tu inspiración para hacer otros gráficos solares geniales, que asombrarán a tus compañeros de trabajo y a tus jefes...


Videotutorial Gráfico solar (1 de 2)

En este primer videotutorial explico cómo se me ha ocurrido la idea de crear un gráfico solar simulado con un par de gráficos radiales rellenos y unos cuantos nombres definidos para darles valor a las series del gráfico.


Videotutorial Gráfico solar (2 de 2)

En este segundo videotutorial explico cómo hacer un gráfico solar paso a paso.


Gráfico solar dinámico

Con unas pocas macros VBA he automatizado el gráfico solar, para que cargue los datos desde la plantilla con los datos PVPC de mi artículo anterior, y para que actualice la hora de la fila seleccionada en la tabla.

El evento Worksheet_SelectionChange de la hoja 'Solar' lanza la macro: CambiarEscala, para cambiar la escala máxima del eje del gráfico solar.


En el módulo MóduloCargarPVPC está la macro para cargar los valores PVPC de un día desde el archivo de mi artículo anterior, siempre que se guarde en el mismo directorio aunque esté cerrado. Se lanza haciendo clic sobre el gráfico solar.


La macro CambiarEscala hace lo que dice su nombre y recalcula todo el libro, lo mismo que hace pulsando manualmente la tecla F9.


Enlaces de interés

Para hacer este gráfico solar me he inspirado en unas páginas de Excel con excelentes ejemplos de gráficos curiosos de Frankens Team, que recomiendo a cualquier entusiasta de Excel:

E90E50charts - Excel Charts Gallery (google.com)

Huge challenge #3 - Infographic chart with Excel - E90E50fx (google.com)

De esta última página he sacado la idea de cómo programar las fórmulas de los nombres definidos para conseguir crear un gráfico solar simulado. En estas páginas hay muchos ejemplos excelentes de gráficos infográficos descargables, hechos totalmente en Excel.

Es una de mis páginas favoritas para estudiar, analizar, aprender y releer nuevos trucos de Excel.

No Response to "Cómo hacer un gráfico solar"

Leave A Reply

Indícame las erratas que encuentres y qué es lo que te gustaría ver en los próximos artículos.

Mi lista de blogs