|
© 2009 PortalFox
|
|
|
| Enviado por amby en Viernes, 10 Octubre, 2003 |
|
Graficar se puede hacer una tarea sencilla....
Adicionar gráficos y diagramas a sus aplicaciones en VFP
Autor: Mike Lewis
http://www.ml-consult.co.uk
Texto original:
-- Add graphs and charts to your VFP applications --
http://www.ml-consult.co.uk/foxst-23.htm
Traducido por:
Ana María Bisbé York
amby@telefonica.net
Libre descarga que terminará con el arduo trabajo de graficar.
Si desea utilizar una vía sencilla para la creación de gráficos y diagramas para sus aplicaciones en Visual FoxPro, échele un vistazo a nuestro SimpleChart control. Baje el control de nuestra página web, adiciónelo a sus formularios, ajuste algunas propiedades y antes de que lo pueda notar, habrá creado gráficos de líneas, histogramas, gráficos de pastel y una docena de varios gráficos bidimensionales y tridimensionales con buena apariencia.
¿Qué es esto?
SimpleChart es en esencia una envoltura del control ActiveX Microsoft's MSChart, que viene con Visual FoxPro 6.0 y 7.0 (n.t. y VFP 8.0). Si ha utilizado alguna vez MSChart, sabrá que permite crear un amplio rango de útiles gráficos; pero esto no ha sido descrito amigablemente al programador. Obtener los datos en el gráfico es bastante complicado. Es necesario también adaptarse a una confusa matriz de propiedades y métodos con el fin de lograr un gráfico con apariencia a la medida del usuario.
El objetivo del control SimpleChart es terminar con el arduo trabajo en el uso de MSChart. Como ánimo, será necesario suministrar la tabla o cursor origen de los datos, fijar dos propiedades del control y llamar a un solo método.
SimpleChart es gratis. Para bajarlo, mire las instrucciones al final del artículo.
Comenzar con un cursor
El primer paso en el uso de SimpleChart es colocar los datos en una tabla o cursor. Esencialmente debe contener un campo para cada serie a graficar y opcionalmente un campo adicional en el que se guardan las etiquetas de fila.
Cada registro del cursor debe corresponder a un punto de dato. (Aunque a partir de ahora vamos a utilizar el término cursor, usted puede utilizar de igual forma una tabla física.)
Por ejemplo, supongamos que se desean graficar los valores de los costes y magnitudes de las ventas mensuales para un año dado. El cursor puede tener el siguiente aspecto.
| Nombre del Mes | Costes_Venta | Magnitudes_Venta | | ENE | 2400 | 3200 | | FEB | 2412 | 3300 | | MAR | 2999 | 3800 | | ABR | 3042 | 4000 | | MAY | 3300 | 4200 | | JUN | 3699 | 6000 | | JUL | 3717 | 6300 | | AGO | 3762 | 6900 | | SEP | 3753 | 6750 | | OCT | 3300 | 5000 | | NOV | 2520 | 4500 | | DIC | 2550 | 4400 |
Esto va a producir un gráfico con dos líneas y doce puntos de dato, en el que se muestran doce nombres de meses (Figura 1).
Si se desea dibujar una serie adicional usando el mismo eje x, solo es necesario adicionar un campo al cursor.

Figura 1: Diagrama simple que muestra dos series de tiempo.
Propiedades y métodos.
El siguiente paso es colocar el control SimpleChart en un formulario, y ajustar dos de sus propiedades. Puede hacer esto desde el Diseñador de formularios o en un punto adecuado del código. Un buen lugar para escribir el código será el evento Init del control.
Las propiedades en cuestión son:
- cAlias. Coloque el alias
del cursor que contiene los datos a graficar.
- cData. Coloque la lista
de los campos del cursor que contienen los datos a graficar.
Estos nombres van separados por coma y deben ser campos con tipos de datos numéricos.
Así, continuando con el ejemplo anterior, si el alias del cursor es csrVentas, usted debe escribir el siguiente código en el evento INIT del control
THIS.cAlias = "csrVentas"
THIS.cData = "COSTES_VENTA,MAGNITUDES_VENTA"
Finalmente, llame al método CreateChart del control SimpleChart para crear el diagrama o gráfico y hacerlo visible en el formulario. No es necesario pasar ningún parámetro al método. La única restricción es que la tabla o cursor deben estar abiertos antes de llamar al método CreateChart.
Personalización
El diagrama que se producirá por esta vía será del tipo lineal bidimensional con dos series similar al mostrado en la figura 1. De forma predeterminada no tendrá leyendas o títulos, y el eje x mostrará las etiquetas predefinidas.
Afortunadamente es fácil mostrar otros tipos de gráficos y personalizar su apariencia de varias formas.
Para lograrlo, ajuste una o varias de las propiedades que se listan a continuación. Normalmente esto se hace antes de llamar al método CreateChart la primera vez. Si desea cambiar alguna de estas propiedades después de haber mostrado el gráfico, solo hay que llamar nuevamente al método CreateChart para hacer estos cambios visibles.
- BorderStyle. Borde para todo el gráfico (0 = sin borde, 1 = línea sencilla; predefinido 0).
- cColours.: Lista, separada por comas, de colores que se emplearán en el gráfico. Los siguientes colores son admitidos: red(rojo), green(verde), blue(azul), black(negro),white(blanco) , grey (or gray) (gris), yellow(amarillo), brown(carmelita o marrón), magenta(púrpura), cyan,darkblue(azul oscuro), darkgreen(verde oscuro). Por ejemplo, si el gráfico tiene tres series el siguiente código las mostrará en azul, blanco y amarillo respectivamente: THIS.cColours = "BLUE,WHITE,YELLOW" (No se tiene en cuenta mayúsculas o minúsculas)
- ChartType. Tipo del diagrama o gráfico. Los siguientes valores son válidos: 0 = 3D bar, 1 = 2D bar, 2 = 3D line, 3 = 2D line, 4 = 3D area, 5 = 2D area, 6 = 3D step, 7 = 2D step, 8 = 3D combination, 9 = 2D combination, 14 = 2D pie, 16 = 2D XY (Predefinido: 3)
- cFootnote. Texto de un título pequeñ;o que aparece debajo del gráfico.
- cLabels. Lista, separada por comas, de las etiquetas que aparecerán en la leyenda (en caso de existir la leyenda)
- cRowLabels. Nombre del campo del cursor que contiene las etiquetas de fila, las que aparecerán a lo largo del eje x.
- cTitle. Texto de un título pequeño para el gráfico. Aparecerá centrado en la parte superior del gráfico.
- lIgnoreZero. Si tiene valor .T. al graficar, ignora los valores iguales a cero (Predefinido .F.)
- lShowMarkers. Si tiene valor .T., muestra símbolos especiales para indicar el punto de dato. (Predefinido .F.)
- ShowLegend. Mostrar leyenda o no. (Predefinido .F.)
Todas estas propiedades toman valores por defecto, así que pueden ser ignoradas, en caso de no estar interesado en utilizarlas.
Cosas que pueden ir mal.
El control SimpleChart ejecuta un mínimo control de errores. El método CreateChart ejecuta las siguientes verificaciones:
- La tabla o cursor debe haber sido especificado en cAlias
- Esta tabla o cursor debe haber sido abierto antes de ser llamado el CreateChart.
- La propiedad cData debe contener el nombre de al menos un campo del cursor
Si una de estas verificaciones falla, CreateChart devolverá .F. y el gráfico no será creado. Si todo está bien, el gráfico devolverá .T.
Respaldo a MSChart
En julio de 1999, Microsoft anunció que no daría más respaldo al control ActiveX dentro del Explorador de Internet. Esto es porque el control es single-enlazado y es por tanto incompatible con Internet Explorer 4.0 y superior.
No se preocupe, esto no va a afectar el uso de MSChart dentro de VFP.
El control trabaja felizmente en aplicaciones de escritorio.
Como bajar el control SimpleChart.
Haga Clic en el siguiente enlace para bajar el SIMPLECHART.ZIP. Este archivo comprimido zip contiene una biblioteca de clases, la que a su vez contiene un control. El control incluye un método Documentation (Documentación) que brinda breves instrucciones de cómo utilizar este control. El tamaño total es de escasos 9 KB
Bajar ahora
Esperamos que encuentre útil el control. Háganos saber, por favor su opinión.
Nota adicionada en Julio 2002: Más información sobre el control SimpleChart está disponible en un nuevo artículo de Foxstuff, SimpleChart revisitado.
Mike Lewis Consultants Ltd. Marzo 2002
|
|
|
|
|
|
| Adicionar gráficos y diagramas a sus aplicaciones en VFP | Entrar/Crear una cuenta | 8 Comentarios |
|
| Los comentarios son propiedad de sus respectivos autores. No somos responsables de su contenido. |
Re: Adicionar gráficos y diagramas a sus aplicaciones en VFP
por xpfoxitos (none@none.com)
en 10 Oct, 2003 - 05:10 (Información del usuario | Enviar un mensaje http://)
|
Lo que más me ha gustado es lo de:
"Bajar ahora"
Del final de la traducción...
Fuera de bromas, gracias por el enlace y la traducción, siempre es necesario tener este tipo de artículos en la recamara.
Saludos.
José Luis.
|
Re: Re: Adicionar gráficos y diagramas a sus aplicaciones en VFP por amby en 10 Oct, 2003 - 09:16 (Información del usuario | Enviar un mensajehttp:// | Hola José Luis:
Bueno... bajar ahora era un enlace a la dirección de descarga del objeto. Este artículo también tiene segunda parte.
Me alegro que te haya gustado, espero que sea útil a alguien.
Saludos,
Ana
|
Re: Re: Adicionar gráficos y diagramas a sus aplicaciones en VFP por Heduardo en 22 Oct, 2003 - 03:03 (Información del usuario | Enviar un mensajehttp://http:// | Hola a todos:
Hola, tengo una pregunta, agrego los colores que quiero utilizar pero solo me muestra el colores del primer registro.
El codigo que tengo en el evento init del grafico es el siguiente:
with this
.cAlias = "Ventas"
.cData = "COSTES"
.cColours = "brown, green, white, black"
.cRowLabels = "mes"
.createchart
endwith
y me muestra los colores café, verde, azul y amarillo, ¿algiuen me puede ayudar? |
Re: Re: Re: Adicionar gráficos y diagramas a sus aplicaciones en VFP por amby en 22 Oct, 2003 - 05:12 (Información del usuario | Enviar un mensajehttp:// | Hola Heduardo:
Estás indicando solo una columna o campo de tu alias, por tanto trabajas con una sola serie.
Si trabajas con una sola serie, no responde la definición de colores que asignes.
Su objetivo es trabajar con más de una serie, por ejemplo venta mensual, gastos mensules y ganacias mensuales. Indicarías 3 columnas o campos si? y el color de cada columna lo puedes asignar por la propiedad cColours.
Entonces, por ejemplo, para el mes de enero tendrás 3 colores marrón, vrde y blanco que se corresponden con las ventas, costes y ganancias de enero. Para Febrero tendrás 3 colores marrón, vrde y blanco que se corresponden con las ventas, costes y ganancias de febrero, etc etc
Espero haberte aclarado.
Saludos y suerte,
Ana |
Re: Re: Adicionar gráficos y diagramas a sus aplicaciones en VFP por mtovar en 13 Jul, 2005 - 04:25 (Información del usuario | Enviar un mensajehttp:// | Muy sencillo de usar y cubre la mayor parte de
las necesidades de graficar en aplicaciones sencillas.
Además al incorporarse como clase al proyecto asegura que el OCX esté siempre insatalado en la máquina del cliente que suele ser un dolor de cabeza.
Muchas gracias a la autora
Manuel Tovar
Barranquilla - COLOMBIA |
Re: Adicionar gráficos y diagramas a sus aplicaciones en VFP
por gustavo005 en 12 Dic, 2006 - 12:12 (Información del usuario | Enviar un mensaje http://http://)
|
Hola buen dia Ana María Bisbé York;
Pues el articulo es interesantisimo, me ha gustado mucho, sin embargo, despues de haber generado el grafico, que opciones se tienen para mandarlo a imprimir en un reporte?
Gracias.
Gustavo.
|
|