[RESUELTO]Introducir valores y nombres en una gráfica(BASIC)

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
Avatar de Usuario
Rufus
Mensajes: 7
Registrado: Dom Oct 18, 2015 3:22 pm

[RESUELTO]Introducir valores y nombres en una gráfica(BASIC)

Mensaje por Rufus »

Buenas, nuevamente estoy aquí para haber si hay solución a esto. Resulta, que una vez que he aprendido, no gracias a la documentación(probando aleatoriamente), a introducir los datos por medio de un array, pero no encuentro forma de introducir los nombres a las etiquetas enumeradas de un eje determinado. Creo que avanzaría más rápido si alguien me indicara cual es la función que devuelve esto o la función que lo modifica, porque la verdad ando ya bastante cansado de jugar con AOO.

Para introducir los valores a la gráfica uso lo siguiente:

Código: Seleccionar todo

	Dim graficas As Object : graficas = hoja.Charts
	Dim grafica as Object  : grafica  = graficas.getByIndex(0).EmbeddedObject ' Tomo la referencia de la grafica
	
	Dim datos : datos = grafica.getData(0) ' Invoco a la funcion getData(0) para obtener la tabla de datos
...
...	
	datos.setData(arrayDeDatos) ' Uso el setData() para introducir la nueva tabla de datos
Una posibilidad que me planteo es que en caso de que no sea posible cambiar programáticamente las etiquetas del eje, es usar el sistema de rango de valores unicamente, osea por medio de las celdas, porque he apreciado que al usar un array de datos se desactiva esta y cambia a tabla de datos en el editor. Parece que no permite un sistema híbrido.
Última edición por Rufus el Mié Oct 21, 2015 12:52 pm, editado 1 vez en total.
Apache OpenOffice 4.1.1 en Windows 8
Avatar de Usuario
Rufus
Mensajes: 7
Registrado: Dom Oct 18, 2015 3:22 pm

Re: Introducir valores y nombres en una gráfica en BASIC

Mensaje por Rufus »

Gracias a todos por colaborar, especialmente al usuario VilleRoy, https://forum.openoffice.org/en/forum/v ... 18#p367418 .

La función que buscaba es setRowDescriptions(). Esta función toma un array de cadenas el cual contiene el nombre o valores para las etiquetas de la fila de la gráfica, eje X (para el eje Y usaríamos setColumnDescriptions()).

Aplicando la función al ejemplo anterior:

Código: Seleccionar todo

   Dim graficas As Object : graficas = hoja.Charts
   Dim grafica as Object  : grafica  = graficas.getByIndex(0).EmbeddedObject 
   
   Dim datos : datos = grafica.getData(0) 
...
...   
   datos.setData(arrayDeDatos) ' Introducimos los valores para la gráfica , por ejemplo Array(Array(1,2,3,4,5),Array(10,20,30,40,50))
   datos.setRowDescriptions(arrayDeNombres) ' Introducimos los nombres para la fila, por ejemplo Array("A","B","C","D","E")

...
Saludos y hasta otra, bye
Apache OpenOffice 4.1.1 en Windows 8
Avatar de Usuario
SLV-es
Mensajes: 4894
Registrado: Jue Ago 26, 2010 1:25 am
Ubicación: España
Contactar:

Re: [RESUELTO]Introducir valores y nombres en una gráfica(BA

Mensaje por SLV-es »

Gracias por compartir la solución que encontraste :bravo: :bravo:
+info en la web "no oficial" dedicada a OpenOffice en Español
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
Responder