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

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...

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

Notapor Rufus » Mar Oct 20, 2015 5:22 pm

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   Expandir vistaContraer vista
   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

Notapor Rufus » Mié Oct 21, 2015 12:50 pm

Gracias a todos por colaborar, especialmente al usuario VilleRoy, https://forum.openoffice.org/en/forum/viewtopic.php?f=20&t=79863&p=367418#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   Expandir vistaContraer vista
   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
Rufus
 
Mensajes: 7
Registrado: Dom Oct 18, 2015 3:22 pm

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

Notapor SLV-es » Vie Oct 23, 2015 5:28 pm

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
Avatar de Usuario
SLV-es
 
Mensajes: 4894
Registrado: Jue Ago 26, 2010 1:25 am
Ubicación: España


Volver a Macros y API UNO

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados