RMChartX - para graficar
Publicado por Marietta (56 intervenciones) el 11/11/2011 22:10:18
Hola,
Necesito ayuda con el ocx RMChartX, la verdad es bastante sencillo para hacer graficos sobre todo estaticos :), y cuando tienes la codificación y ejemplos mejor aún.
Yo estoy pegada con un grafico de lineas, bueno las etiquetas o label de los ejes X(horizontal) e Y (Vertical) los genero según la información del momento en la ventana y el grafico en si la data también solo que no me esta quedando bien me queda como corrida la información(como corrido el grafico con los datos). en estos momentos estoy usando AddLineSeries.
DEF INPUT PARAMETER v_labelejeX AS CHARACTER.
DEF INPUT PARAMETER v_labelejeY AS CHARACTER.
chCtrlFrame:RMChartX:Reset.
chCtrlFrame:RMChartX:RMCWidth = 650.
chCtrlFrame:RMChartX:RMCHeight = 515.
chCtrlFrame:RMChartX:RMCStyle = 2.
chCtrlFrame:RMChartX:RMCUserWMLucent = 0.
chCtrlFrame:RMChartX:RMCBackColor = rgb(LightGray).
/************** Add Region 1 ****************************/
chCtrlFrame:RMChartX:AddRegion.
chCtrlFrame:RMChartX:Region(1):Left = 2.
chCtrlFrame:RMChartX:Region(1):Top = 2.
chCtrlFrame:RMChartX:Region(1):Width = -2.
chCtrlFrame:RMChartX:Region(1):Height = -2.
chCtrlFrame:RMChartX:Region(1):Footer = "DIAS DEL MES DE " + UPPER(A_meses[MONTH(FILL-IN-Fecha)]).
/************** Add Caption to region 1 *****************************/
chCtrlFrame:RMChartX:Region(1):AddCaption.
chCtrlFrame:RMChartX:Region(1):Caption:titel = "Gráfica Moneda " + tmp-mon.tmoneda + UPPER(A_meses[MONTH(FILL-IN-Fecha)]).
chCtrlFrame:RMChartX:Region(1):Caption:BackColor = rgb(LightCyan).
chCtrlFrame:RMChartX:Region(1):Caption:FontSize = 8.
chCtrlFrame:RMChartX:Region(1):Caption:TextColor =rgb(DarkBlue).
chCtrlFrame:RMChartX:Region(1):Caption:Bold = TRUE.
/************** Add grid to region 1 *****************************/
chCtrlFrame:RMChartX:Region(1):AddGrid.
chCtrlFrame:RMChartX:Region(1):Grid:BackColor = "&HFF000000".
/* chCtrlFrame:RMChartX:Region(1):Grid:AsGradient = TRUE.
:BicolorMode = RMC_BICOLOR_NONE
:Left = 0
:Top = 0
:Width = 0
:Height = 0 */
/************** Add Legend to region 1 *****************************/
/* chCtrlFrame:RMChartX:Region(1):AddLegend. */
/* chCtrlFrame:RMChartX:Region(1):Legend:FontSize = 6. */
/* chCtrlFrame:RMChartX:Region(1):Legend:BackColor = rgb(white). /*rgb(LightSteelBlue). */ */
/* chCtrlFrame:RMChartX:Region(1):Legend:TextColor = rgb(DarkRed). /*rgb(Khaki). */ */
/* chCtrlFrame:RMChartX:Region(1):Legend:LegendString = tmp-mon.tmoneda. */
/* chCtrlFrame:RMChartX:Region(1):Legend:Alignment = 15. /*orientacion del-1 al 21*/ */
/* chCtrlFrame:RMChartX:Region(1):Legend:Style = 3. /*estilo del 1 al 5*/ */
/* chCtrlFrame:RMChartX:Region(1):Legend:Bold = FALSE. */
MESSAGE "v_labelejeX = " v_labelejeX SKIP(2)
"v_tickFila = " v_tickFila SKIP
"v_min = " v_min SKIP
"v_max = " v_max SKIP
"v_labelejeY = " v_labelejeY SKIP(2)
"v_datos = " v_datos .
/************** Add data axis to region 1 *****************/
chCtrlFrame:RMChartX:Region(1):AddDataAxis.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):Alignment = 1. /*Orientation 1 AL 4*/
chCtrlFrame:RMChartX:Region(1):DataAxis(1):MinValue = v_min.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):MaxValue = v_max.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):TickCount = v_tickFila.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):FontSize = 6.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):TextColor = rgb(DarkBlue).
chCtrlFrame:RMChartX:Region(1):DataAxis(1):LineColor = rgb(DarkGreen).
chCtrlFrame:RMChartX:Region(1):DataAxis(1):LabelString = v_labelejeY. /*vertical*/
chCtrlFrame:RMChartX:Region(1):DataAxis(1):LineStyle = 0. /*RMC_LINESTYLESOLID */
chCtrlFrame:RMChartX:Region(1):DataAxis(1):DecimalDigits= 3.
/* chCtrlFrame:RMChartX:Region(1):DataAxis(1):AxisUnit = " $". */
/* chCtrlFrame:RMChartX:Region(1):DataAxis(1):AxisText = tmp-mon.tmoneda. */
/********* Add label axis to region 1 *****************/
chCtrlFrame:RMChartX:Region(1):AddLabelAxis.
chCtrlFrame:RMChartX:Region(1):LabelAxis:AxisCount = v_mes.
chCtrlFrame:RMChartX:Region(1):LabelAxis:TickCount = v_mes.
chCtrlFrame:RMChartX:Region(1):LabelAxis:FontSize = 6.
chCtrlFrame:RMChartX:Region(1):LabelAxis:LineColor = rgb(DarkGreen).
chCtrlFrame:RMChartX:Region(1):LabelAxis:LabelString = v_labelejeX. /*horizontal*/
chCtrlFrame:RMChartX:Region(1):LabelAxis:TextColor = rgb(Blue).
chCtrlFrame:RMChartX:Region(1):LabelAxis:Alignment = 8. /*del 5 al 8*/
/************* Add Series 2 to region 1 ****************/
chCtrlFrame:RMChartX:Region(1):AddLineSeries.
chCtrlFrame:RMChartX:Region(1):LineSeries(1):SeriesType = 21.
chCtrlFrame:RMChartX:Region(1):LineSeries(1):Color = rgb(LightBlue).
chCtrlFrame:RMChartX:Region(1):LineSeries(1):DataString = v_datos. /*los datos*/
chCtrlFrame:RMChartX:Draw(TRUE).
nota: el v_labelejeX tiene los dias del mes (de menor a mayor), el v_labelejeY lo obtengo a partir de una tabla temporal que tiene todos los valores de la moneda del mes, y dejo aqui los valores sin que se repitan (no quiero etiquetas repetidas) , ordenados de menos a mayor, y en v_datos tengo todos los valores del mes ordenados por fecha, el grafico sale un poco corrido....
pero no hace lo que quiero al 100% revisando en internet encontre varios codigos y quiero ver como usar el RMC_AddXYSeriesI o asi AddXYSeriesI. (RMC_AddXAxisI. RMC_AddYAxisI. ) ya que a mi me da error. y la verdad ya no se me ocurre nada más por ahora, alguien tiene ejemplos de graficos de lineas, más complejos, o con el uso de ddXYSeriesI, donde y como coloco el dato correcto en la intersección. Si alguien tiene ejemplos, manual de como usarlo se lo agradeceria montones.
nota:aca se esta usando el RMChartX 4.
Necesito ayuda con el ocx RMChartX, la verdad es bastante sencillo para hacer graficos sobre todo estaticos :), y cuando tienes la codificación y ejemplos mejor aún.
Yo estoy pegada con un grafico de lineas, bueno las etiquetas o label de los ejes X(horizontal) e Y (Vertical) los genero según la información del momento en la ventana y el grafico en si la data también solo que no me esta quedando bien me queda como corrida la información(como corrido el grafico con los datos). en estos momentos estoy usando AddLineSeries.
DEF INPUT PARAMETER v_labelejeX AS CHARACTER.
DEF INPUT PARAMETER v_labelejeY AS CHARACTER.
chCtrlFrame:RMChartX:Reset.
chCtrlFrame:RMChartX:RMCWidth = 650.
chCtrlFrame:RMChartX:RMCHeight = 515.
chCtrlFrame:RMChartX:RMCStyle = 2.
chCtrlFrame:RMChartX:RMCUserWMLucent = 0.
chCtrlFrame:RMChartX:RMCBackColor = rgb(LightGray).
/************** Add Region 1 ****************************/
chCtrlFrame:RMChartX:AddRegion.
chCtrlFrame:RMChartX:Region(1):Left = 2.
chCtrlFrame:RMChartX:Region(1):Top = 2.
chCtrlFrame:RMChartX:Region(1):Width = -2.
chCtrlFrame:RMChartX:Region(1):Height = -2.
chCtrlFrame:RMChartX:Region(1):Footer = "DIAS DEL MES DE " + UPPER(A_meses[MONTH(FILL-IN-Fecha)]).
/************** Add Caption to region 1 *****************************/
chCtrlFrame:RMChartX:Region(1):AddCaption.
chCtrlFrame:RMChartX:Region(1):Caption:titel = "Gráfica Moneda " + tmp-mon.tmoneda + UPPER(A_meses[MONTH(FILL-IN-Fecha)]).
chCtrlFrame:RMChartX:Region(1):Caption:BackColor = rgb(LightCyan).
chCtrlFrame:RMChartX:Region(1):Caption:FontSize = 8.
chCtrlFrame:RMChartX:Region(1):Caption:TextColor =rgb(DarkBlue).
chCtrlFrame:RMChartX:Region(1):Caption:Bold = TRUE.
/************** Add grid to region 1 *****************************/
chCtrlFrame:RMChartX:Region(1):AddGrid.
chCtrlFrame:RMChartX:Region(1):Grid:BackColor = "&HFF000000".
/* chCtrlFrame:RMChartX:Region(1):Grid:AsGradient = TRUE.
:BicolorMode = RMC_BICOLOR_NONE
:Left = 0
:Top = 0
:Width = 0
:Height = 0 */
/************** Add Legend to region 1 *****************************/
/* chCtrlFrame:RMChartX:Region(1):AddLegend. */
/* chCtrlFrame:RMChartX:Region(1):Legend:FontSize = 6. */
/* chCtrlFrame:RMChartX:Region(1):Legend:BackColor = rgb(white). /*rgb(LightSteelBlue). */ */
/* chCtrlFrame:RMChartX:Region(1):Legend:TextColor = rgb(DarkRed). /*rgb(Khaki). */ */
/* chCtrlFrame:RMChartX:Region(1):Legend:LegendString = tmp-mon.tmoneda. */
/* chCtrlFrame:RMChartX:Region(1):Legend:Alignment = 15. /*orientacion del-1 al 21*/ */
/* chCtrlFrame:RMChartX:Region(1):Legend:Style = 3. /*estilo del 1 al 5*/ */
/* chCtrlFrame:RMChartX:Region(1):Legend:Bold = FALSE. */
MESSAGE "v_labelejeX = " v_labelejeX SKIP(2)
"v_tickFila = " v_tickFila SKIP
"v_min = " v_min SKIP
"v_max = " v_max SKIP
"v_labelejeY = " v_labelejeY SKIP(2)
"v_datos = " v_datos .
/************** Add data axis to region 1 *****************/
chCtrlFrame:RMChartX:Region(1):AddDataAxis.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):Alignment = 1. /*Orientation 1 AL 4*/
chCtrlFrame:RMChartX:Region(1):DataAxis(1):MinValue = v_min.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):MaxValue = v_max.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):TickCount = v_tickFila.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):FontSize = 6.
chCtrlFrame:RMChartX:Region(1):DataAxis(1):TextColor = rgb(DarkBlue).
chCtrlFrame:RMChartX:Region(1):DataAxis(1):LineColor = rgb(DarkGreen).
chCtrlFrame:RMChartX:Region(1):DataAxis(1):LabelString = v_labelejeY. /*vertical*/
chCtrlFrame:RMChartX:Region(1):DataAxis(1):LineStyle = 0. /*RMC_LINESTYLESOLID */
chCtrlFrame:RMChartX:Region(1):DataAxis(1):DecimalDigits= 3.
/* chCtrlFrame:RMChartX:Region(1):DataAxis(1):AxisUnit = " $". */
/* chCtrlFrame:RMChartX:Region(1):DataAxis(1):AxisText = tmp-mon.tmoneda. */
/********* Add label axis to region 1 *****************/
chCtrlFrame:RMChartX:Region(1):AddLabelAxis.
chCtrlFrame:RMChartX:Region(1):LabelAxis:AxisCount = v_mes.
chCtrlFrame:RMChartX:Region(1):LabelAxis:TickCount = v_mes.
chCtrlFrame:RMChartX:Region(1):LabelAxis:FontSize = 6.
chCtrlFrame:RMChartX:Region(1):LabelAxis:LineColor = rgb(DarkGreen).
chCtrlFrame:RMChartX:Region(1):LabelAxis:LabelString = v_labelejeX. /*horizontal*/
chCtrlFrame:RMChartX:Region(1):LabelAxis:TextColor = rgb(Blue).
chCtrlFrame:RMChartX:Region(1):LabelAxis:Alignment = 8. /*del 5 al 8*/
/************* Add Series 2 to region 1 ****************/
chCtrlFrame:RMChartX:Region(1):AddLineSeries.
chCtrlFrame:RMChartX:Region(1):LineSeries(1):SeriesType = 21.
chCtrlFrame:RMChartX:Region(1):LineSeries(1):Color = rgb(LightBlue).
chCtrlFrame:RMChartX:Region(1):LineSeries(1):DataString = v_datos. /*los datos*/
chCtrlFrame:RMChartX:Draw(TRUE).
nota: el v_labelejeX tiene los dias del mes (de menor a mayor), el v_labelejeY lo obtengo a partir de una tabla temporal que tiene todos los valores de la moneda del mes, y dejo aqui los valores sin que se repitan (no quiero etiquetas repetidas) , ordenados de menos a mayor, y en v_datos tengo todos los valores del mes ordenados por fecha, el grafico sale un poco corrido....
pero no hace lo que quiero al 100% revisando en internet encontre varios codigos y quiero ver como usar el RMC_AddXYSeriesI o asi AddXYSeriesI. (RMC_AddXAxisI. RMC_AddYAxisI. ) ya que a mi me da error. y la verdad ya no se me ocurre nada más por ahora, alguien tiene ejemplos de graficos de lineas, más complejos, o con el uso de ddXYSeriesI, donde y como coloco el dato correcto en la intersección. Si alguien tiene ejemplos, manual de como usarlo se lo agradeceria montones.
nota:aca se esta usando el RMChartX 4.
Valora esta pregunta


0