none
Gráfico xy RRS feed

  • Pregunta

  • Buenas noches compañeros:

    Tengo dos columnas de textboxs, quiero que al hacer click en un botón pueda realizar un gráfico XY lineal.

    Muchas gracias 

    sábado, 25 de junio de 2016 4:35

Respuestas

  • Primero algunos apuntes sobre la pregunta:

    Procura elegir adecuadamente el foro. Por ejemplo si la pregunta se refiere a Windows Forms sería más adecuado éste que el de Visual Studio.

    Trata de dar toda la información relevante: tecnología (Windows Forms, WPF, ASP.NET, Universal Apps,....), lenguaje en el que desarrollas (VB.NET, C#, ...), versión del Framework de .NET, del Visual Studio, .....

    Dedícale un poco de tiempo a redactar la pregunta: qué has intentado, qué problemas te has encontrado, particularidades del caso, código que has desarrollado pero que no produce el resultado deseado, errores que se generan,... Esto ayudará mucho a la gente que trate de ayudarte y de paso conseguirás que las soluciones propuestas se ajusten más a tu problema concreto.

    Dicho esto, voy a suponer que estamos hablando de Windows Forms y VB.NET (por lo que he visto en tus preguntas anteriores).

    Para recorrer los valores de los TextBox te recomendaría juntar los TextBox correspondientes a cada serie en un control contenedor diferente. Por ejemplo, podrías crearte un Panel "panelSerie1" en el que estén los TextBox de la primera serie y otro Panel "panelSerie2" en el que estén los de la segunda.

    De esta forma no tendrás más que recorrer los controles de cada panel e ir agregando los valores a la serie correspondiente en el gráfico.

    Mira este ejemplo:

        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Chart1.Series.Clear()
            Dim serie1 = Chart1.Series.Add("Serie1")
            serie1.ChartType = SeriesChartType.Line
            Dim serie2 = Chart1.Series.Add("Serie2")
            serie2.ChartType = SeriesChartType.Line
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            Dim serie1TextBoxes = panelSerie1.Controls.OfType(Of TextBox)
            Dim serie2TextBoxes = panelSerie2.Controls.OfType(Of TextBox)
    
            Chart1.Series("Serie1").Points.Clear()
            For Each t As TextBox In serie1TextBoxes
                Dim valor = 0
                Integer.TryParse(t.Text, valor)
                Chart1.Series("Serie1").Points.AddY(valor)
            Next
            Chart1.Series("Serie2").Points.Clear()
            For Each t As TextBox In serie2TextBoxes
                Dim valor = 0
                Integer.TryParse(t.Text, valor)
                Chart1.Series("Serie2").Points.AddY(valor)
            Next
        End Sub

    En el Load creo las series y especifico que son de tipo Line.

    Al pulsar el botón Button1 se pasan los datos de los TextBox al gráfico.

    Simplemente recorre los controles TextBox de cada uno de los paneles, convierte su valor a Integer y lo añado a la colección de puntos de la serie correspondiente.


    Píldoras .NET
    Artículos, tutoriales y ejemplos de código .NET

    Píldoras JS
    Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...

    sábado, 25 de junio de 2016 7:07