Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Visual Basic NET Dibujo de Funciones
Visual Basic NET Dibujo de Funciones
net
Publicado por ingsistele en mayo 1, 2011
Graficar una funcion algebraica en muchas ocasiones se convierte en algo tedioso y
complicado de hacer, en la mayoria de las ocasiones recurrimos a software especializado
que se encargan de elaborar dichas graficas como es el famoso matlab o la herramienta de
matematicas que incluye microsoft encarta.
En este tutorial se realizara una aplicacion a traves de la cual la elaboracion de graficas se
nos convertira en algo sencillo ya que vamos a crear un graficador, si , una herramienta
capaz de plotearnos la funcion que le indiquemos en la entrada, para ello, haremos uso de la
libreria JEP (Java parses and evaluates mathematical expressions) explicado en el post
anterior y tambien haremos uso del control MSchart de microsoft para visual express 2008
el cual servira como control que mostrara las graficas
Primero que todo tenemos que instalar el control mschart, se puede descargar de: Descargar
mschart
Bien, una vez descargado debemos instalar el control, el cual se llama MSChart.exe, lo
ejecutas y el se instala normalmente; despues hay que agregar el control al vb.net, para ello
debejos ejecutar el archivo llamado MSChart_VisualStudioAddOn.exe, que tambien se
puede descargar de: agregar mschart a vb.net tambien lo ejecutas y lo instalas normalmente,
en la siguiente imagen te muestro los archivos a instalar, los cuales subire al final del post,
Listo, luego se hace click en el boton aceptar y nuestro control quedara con una grafica del
siguiente aspecto:
Imports SingularSys.Jep
Imports SingularSys.Jep.Types
luego importamos la biblioteca que hace referencia a mschar para poder hacer uso de sus
funciones y propiedades:
ver fuente
imprimir?
1 Imports System.Windows.Forms.DataVisualization.Charting
imprimir?
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
2 Chart1.Series(0).ChartType = SeriesChartType.Spline
3
Chart1.Series(0).Points.AddY(1)
4
End Sub
1
despues de haber inicializado nuestra grafica lo que hacemos ahora es programar el tipo de
grafica a generar cuando se le de click al boton graficar, para ello, escribimos en el evento
click de dicho boton las siguientes instrucciones:
ver fuente
imprimir?
01
02
03
Chart1.Series(0).Points.Clear()
Me.Label_ngrafica.Text = Me.TextBox_funcion.Text 'muestro en el label
ngrafica la funcion de entrada
04
05
Dim i As Double
06
07
For i = -10 To 10 Step 0.1
08
09
Try
10
11 jVar.VarTab.AddVariable("x", New JepDouble(i))
12
13
jVar.ReinitializeComponents()
14
15
jVar.Parse(Me.TextBox_funcion.Text)
16
17 Chart1.Series(0).Points.AddXY(i, CDbl(jVar.Evaluate().ToString))
18
19
Catch ex As Exception
20
21
End Try
22
23
Next
el proceso que se hace dentro del ciclo for es hacer un recorrido desde -10 hasta 10 en pasos
o incrementos de 0.1, atraves del cual se le ira asignando cada valor de la variable usada en
el ciclo a la variable x, mas adelante, se va evaluando dicha funcion en el valor actual
(como se vio en el post anterior), y se va graficando el punto; de tal manera que al final
obtendremos una sucesion de puntos que formaran nuestra grafica en un rango desde -10 a
10.
es momento ahora de realizar una prueba a nuestro graficador intentando hacer varias
graficas, probemos con una sencilla primero:
y=x^2
Muy bien, hasta aqui hemos logrado hacer un simple y potente graficador en vb.net usando
herramientas faciles de manejar, espero y este tutorial les sea facil de entender y resulte util
en sus trabajos o en la cotidianidad
hasta la proxima
Descargar Programa
About these ads
Me gusta:
Me gusta
Se el primero en decir que te gusta.
Esta entrada fue publicada el mayo 1, 2011 a 1:54 am y est archivada en Programacion
en .Net. Puedes seguir los comentarios a esta entrada a travs de RSS 2.0 feed. Puedes deja
un comentario, o trackback desde tu propio sitio.
Jos escribi
septiembre 14, 2011 a 2:48 pm
caray, eres un tigre y que tal forma de introducirnos en este tema, gracias te debo la
vida
Responder
2.
ingsistele escribi
enero 22, 2012 a 3:56 pm
ingsistele escribi
febrero 3, 2012 a 11:33 pm
una pregunta como le hago par poder poner los intervalos,es decir los valores para x
saludos!!
Responder
o
ingsistele escribi
marzo 17, 2012 a 6:58 pm
imprimir?
1 Chart1.ChartAreas(0).AxisX.Minimum
Chart1.ChartAreas(0).AxisX.Maximum
2
grafica, (maximo valor 100)
3 Chart1.ChartAreas(0).AxisY.Minimum
Chart1.ChartAreas(0).AxisY.Maximum
4
grafica, (maximo valor 5)
5
Chart1.Series(0).Points.AddY(1)
= 0 'Minimo valor de x
= 100 'Numero de puntos en x de la
= -2 'Minimo valor de y
= 5 'Numero de puntos en y de la
imprimir?
1
2
3
4
5
For i = 0 To 20 Step 2
'aqui va el codigo para generar la grafica
Next
muchas gracias me sirvi bastante da gusto que haiga personas como tu que
comparten sus conocimientos
muy bueno el tutorial
Responder
6.
ingsistele escribi
julio 30, 2012 a 5:14 pm
imprimir?
1 Chart1.Series(0).ChartType = SeriesChartType.FastLine
y para que grafiques los datos que vas recibiendo desde el puerto serie,
debes crear un procedimiento que revise constantemente la llegada de cada
trama de datos para extraer el valor numerico a graficar y propiamente lo
graficas con solo agregar una linea de codigo asi:
ver fuente
imprimir?
1 Chart1.Series(0).Points.AddY(valoragraficar)
Deja un comentario
guest