Chart funziona a meta

di il
5 risposte

Chart funziona a meta

Buon giorno a tutti anche se piove

ho un problemino da proporvi, ho fatto un grafico con   Chart

più che altro l'ho trovato in rete e me lo sono adattato

e fin qui tutto bene, il fatto è che non riesco ad avere le 11 colonne col loro nome

me ne da solo 5 dove è che sbaglio.

allego listato

 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Me.Chart1.DataSource = GetData()
    Me.Chart1.Series.Clear()
    Chart1.ChartAreas.Clear()
    Chart1.ChartAreas.Add("Area0")
    Me.Chart1.Series.Add("Pista")

    Chart1.Series(0).XValueMember = "Name"
    Chart1.Series(0).YValueMembers = "Math"
    Chart1.Series(0).IsValueShownAsLabel = True
    Chart1.ChartAreas(0).AxisX.LabelStyle.Angle = -40

End Sub

Public Function GetData() As DataTable
    Dim dt = New DataTable()
    dt.Columns.Add("Name", GetType(String))
    dt.Columns.Add("Math", GetType(Integer))
    dt.Columns.Add("Physics", GetType(Integer))
    dt.Rows.Add("Alex", 12, 17)
    dt.Rows.Add("Richard", 19, 20)
    dt.Rows.Add("Alice", 18, 16)
    dt.Rows.Add("pippo", 20, 16)
    dt.Rows.Add("Marco", 30, 16)
    dt.Rows.Add("Amedeo", 45, 16)
    dt.Rows.Add("romeo", 49, 16)
    dt.Rows.Add("Clod", 50, 16)
    dt.Rows.Add("siva", 55, 16)
    dt.Rows.Add("gina", 60, 16)
    dt.Rows.Add("carla", 70, 16)
    Return dt
End Function
Grazie 1000 a tutti

PS: per cortesia non bachettatemi. Grazieee

5 Risposte

  • Re: Chart funziona a meta

    Quando posti del codice nel forum, formattalo appositamente per evitare confusione usando il tasto <> dell'editor.

    Il codice più opportuno dovrebbe essere

        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
           With Chart1
               .Series.Clear()
               .ChartAreas.Clear()
               .ChartAreas.Add("Area0")
               .ChartAreas("Area0").AxisX.Interval = 1
               .Series.Add("Math")
               With .Series(0)
                   .XValueMember = "Nome"
                   .YValueMembers = "Math"
                   .IsValueShownAsLabel = True
               End With
    
               .Series.Add("Physics")
               With .Series(1)
                   .XValueMember = "Nome"
                   .YValueMembers = "Physics"
                   .IsValueShownAsLabel = True
               End With
               .DataSource = GetData()
           End With
       End Sub
       Public Function GetData() As DataTable
           Dim dt = New DataTable()
           With dt
               .Columns.Add("Nome", GetType(String))
               .Columns.Add("Math", GetType(Integer))
               .Columns.Add("Physics", GetType(Integer))
               .Rows.Add("Nome 1", 12, 17)
               .Rows.Add("Nome 2", 19, 20)
               .Rows.Add("Nome 3", 18, 16)
               .Rows.Add("Nome 4", 20, 16)
               .Rows.Add("Nome 5", 30, 16)
               .Rows.Add("Nome 6", 45, 16)
               .Rows.Add("Nome 78", 49, 16)
               .Rows.Add("Nome 8", 50, 16)
               .Rows.Add("Nome 9", 55, 16)
               .Rows.Add("Nome 10", 60, 16)
               .Rows.Add("Nome 11", 70, 16)
           End With
           Return dt
       End Function
    

    P.S. Non è questione di “bacchettare” ma questi codici non vanno copiati e incollati senza capirli. Se vuoi usare un controllo Chart, prima di tutto, documentati e studialo dalla documentazione ufficiale (che esiste ed è comprensibile da tutti).

  • Re: Chart funziona a meta

    Ok ti ringrazio della risposta ,in futuro farò come dici tu.

    per quello che riguarda la documentazione ci ho provato ma sinceramente non ci capisco nulla o perlomeno

    molto poco, con gli esempi magari anche banali capisco meglio, purtroppo

    sono fatto cosi non posso farci niente.

    sempre stato un zuccone.

    comunque grazie,

  • Re: Chart funziona a meta

    Putroppo la programmazione, anche se per hobby, non è una attività che si fa “per esempi” (o solo molto limitatamente).

    Come ogni attività complessa, si devono studiare e applicare le regole che esistono su libri e documentazione (se non ti va bene l'inglese, esistono molte fonti in italiano). Tutto quello che si studia in teoria va poi applicato in pratica ma il contrario è molto faticoso e ti può bloccare in ogni momento.

    non posso farci niente

    Purtroppo neanche il forum

    P.S. Non ti abituare al codice corretto e pronto perché ho fatto una eccezione. Il forum non serve ad avere codice corretto e pronto all'uso. In un altro caso ti avrei detto di documentarti sulla Chart

    Classe Chart

  • Re: Chart funziona a meta

    Ti ringrazio delle delucidazioni ,ma sono 2 settimane che ci sto dietro

    e non capisco perché andava a meta.

    Quello che cerco io non sono le soluzioni e su quello te ne do atto

    ma farmi ragionare su dove sbaglio, gli errori che commetto da perfetto ignorante.

    comunque al momento funziona tutto, proprio come volevo

    ora devo solo capire come funzionano le varie procedure.

    grazie ancora

  • Re: Chart funziona a meta

    Prova a togliere la riga

    .ChartAreas("Area0").AxisX.Interval = 1

    e riflettici su

Devi accedere o registrarti per scrivere nel forum
5 risposte