Eje X secundario

Discute el uso de extensiones desarrolladas por terceros dentro de Apache OpenOffice
Responder
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Eje X secundario

Mensaje por valenteres »

Buenas tardes:

Con el código que acompaño he podido hacer visible y dar formato a diferentes componentes del eje X secundario.

Código: Seleccionar todo

' Eje X Secundadrio de Ordenadas

	axis = chart.getDiagram().getSecondaryXAxis()

' Rótulos del eje
	properties =  Array(   _
		Array("CharColor", RGB(0,0,0)), _
		Array("CharHeight", 12), _
		Array("CharWeight", 150), _
		Array("CharFontName", "Times New Roman"), _
		)
		util.imageFormat(axis, properties)

'Línea del eje
	properties = Array(   _
		Array("LineStyle", 1), _
		Array("LineColor", RGB(0,0,0)), _
		Array("LineWidth", 10) _
		)
		util.imageFormat(axis, properties)

With axis
	.Visible=True
	.axisTitle.String = "XSecundario"

'Escala
	.Min = 37074
	.Max = 37075
	.NumberFormat = 10

End With
Sin embargo, lo que no he conseguido es asignar una serie al eje secundario X

En el caso del eje Y, el valor de AttachedAxisIndex permite asignar la serie al eje Y principal (AttachedAxisIndex =0) o al secundario (AttachedAxisIndex = 1)
Supongo que debe haber algo parecido para el eje X, pero no soy capaz de encontrarlo.

Dado que AttachedAxisIndex es una propiedad de la serie, podría ser que su valor controlara la asignación de la serie a los ejes principales y secundarios. He probado con diferentes valores pero el resultado no ha sido satisfactorio.

¿Alguna solución?

Muchas gracias
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Eje X secundario

Mensaje por mauricio »

valenteres escribió:Sin embargo, lo que no he conseguido es asignar una serie al eje secundario X
Y... ¿como se ve un gráfico con una serie en el eje secundario X?... ¿como se hace manualmente?
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Re: Eje X secundario

Mensaje por valenteres »

Buenos días:

La verdad es que no he conseguido hacerlo manualmente. Pero el hecho es que el código permite activarlo y caracterizarlo como los ejes X, Y e Ysecundario.
No tiene sentido que permita hacer todo esto y no permita utilizarlo para graficar una serie. Podría ser que la programación proporciona mas potencia de trabajo que la utilización manual.
Por otra parte, en caso de que sea posible, en mi opinión su utilidad está fuera de toda duda. Permite, pro ejemplo, comparar la evolución de distintas o la misma serie de datos para diferentes intervalos de la variable representada en el eje X.

Sería bueno poder hacer algo en este sentido.

Un saludo
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Eje X secundario

Mensaje por mauricio »

valenteres escribió:No tiene sentido que permita hacer todo esto y no permita utilizarlo para graficar una serie. Podría ser que la programación proporciona mas potencia de trabajo que la utilización manual.
Puede tenerlo si consideras lo siguiente, si haces:

Código: Seleccionar todo

   properties =  Array(   _
      Array("CharColor", RGB(0,0,0)), _
      Array("CharHeight", 12), _
      Array("CharWeight", 150), _
      Array("CharFontName", "Times New Roman"), _
      )
      util.imageFormat(axis, properties)
Dentro del código, me aseguro de que la propiedad exista en el objeto, y solo si existe la aplico. Así que si hace.

Código: Seleccionar todo

   properties =  Array(   _
      Array("CharColorOFBORDER", RGB(0,0,0)), _
      Array("CharNEW", 12), _
      )
      util.imageFormat(axis, properties)
No obtendrás un error, pero no hará nada... en este caso, y serán pocos en EasyDev, por que es mala idea no mostrar los errores respectivos, pero como el método imageFormat sirve para cualquier objeto gráfico de todo AOO/LibO, solo hay que consultar la lista de propiedades del objeto en que se trabaja...

En este caso, creo, salvo comprobarlo, si no se puede hacer manualmente, no se puede hacer por código, pero... y esto me encanta de Python, siempre se puede usar una librería externa, hasta un servicio web si se quieres, que regrese el gráfico como queramos.

Generalmente así es, y generalmente la potencia tiene que ver también, con que no tengamos que hacer esas cosas aburridas y repetitivas, más que con el poder de computo...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Responder