Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

Ayuda con programa para graficar

dante_osc5

Bovino maduro
Desde
17 Dic 2008
Mensajes
239
existe algun buen programa para realizar graficas de barra y pastel ke no sea visio o nada de office???
 
con el visual estudio 2010 framework 4.0 hay una herramienta llamada chart y están muy fáciles de programar lo conectas con una base de datos y listo tendrás para escoger muchos tipos de gráficas
 
Saludos partner

En sus tiempos hubo uno bastante bueno que se llamaba Corel Chart, No se si todavía venga con la suite de Corel.
Bueno, el detalle es que no dices si lo quieres independiente o lo quieres para incluirlo como librería en un proyecto de Visual Studio ?
Si lo quieres para Visual Studio hay uno que se llama Chart FX.

Suerte.
 
Codigo en C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace SchoolEnrolment1
{
public partial class Form1 : Form
{
float Graduates;
float Undergraduates;
float Certificates;

public Form1()
{
InitializeComponent();

}
private void Form1_Paint(object sender, PaintEventArgs e)
{
pbxChart.CreateGraphics().DrawEllipse(new Pen(Color.Red),new Rectangle(0, 0, 260, 260));
pbxChart.CreateGraphics().DrawPie(new Pen(Color.Blue),0.0F, 0.0F, 260.0F, 260.0F, 0.0F, Graduates);
pbxChart.CreateGraphics().DrawPie(new Pen(Color.Green),0.0F, 0.0F, 260.0F,260.0F, Graduates, Undergraduates);
pbxChart.CreateGraphics().DrawPie(new Pen(Color.Fuchsia),0.0F, 0.0F, 260.0F,260.0F, Graduates + Undergraduates,Certificates);
e.Graphics.DrawEllipse(new Pen(Color.Blue),new Rectangle(lblGraduates.Left,lblGraduates.Top + 20,lblUndergraduates.Width,20));
e.Graphics.DrawEllipse(new Pen(Color.Green),new Rectangle(lblUndergraduates.Left,lblUndergraduates.Top + 20,lblUndergraduates.Width,20));
e.Graphics.DrawEllipse(new Pen(Color.Fuchsia),new Rectangle(lblCertificates.Left,lblCertificates.Top + 20,lblUndergraduates.Width,20));
}

private void pbxChart_Paint(object sender, PaintEventArgs e)
{
Invalidate();
}

private void btnCreateChart_Click(object sender, EventArgs e)
{
float grad = 0.00F,under = 0.00F,cert = 0.00F,total = 0.00F;
float percentGraduates,
percentUndergraduates,
percentCertificates;
try
{
grad = float.Parse(txtGraduates.Text);
}
catch (FormatException)
{
MessageBox.Show("Valor en grados inválidos");
}
try
{
under = float.Parse(txtUndergraduates.Text);
}
catch (FormatException)
{
MessageBox.Show("Valor en grados inválidos");
}
try
{
cert = float.Parse(txtCertificates.Text);
}
catch (FormatException)
{
MessageBox.Show("Valor en grados inválidos");
}
//formula matemática
total = grad + under + cert;
percentGraduates = (grad / total) * 100;
percentUndergraduates = (under / total) * 100;
percentCertificates = (cert / total) * 100;
Graduates = (360 * percentGraduates) / 100;
Undergraduates = (360 * percentUndergraduates) / 100;
Certificates = (360 * percentCertificates) / 100;
pbxChart.Invalidate();
}

}
}
 
Volver
Arriba