Novità

Mente da programmatore

Quindi tralasciando la parte datatable :
Codice:
                Dim table As New DataTable
                table.Columns.Add("x", GetType(String))
                table.Columns.Add("y", GetType(Integer))







                Dim ChartArea1 As ChartArea = New ChartArea()
                Dim Legend1 As Legend = New Legend()
                Dim Series1 As Series = New Series()
                Chart1.ChartAreas.Clear()
                Chart1.Legends.Clear()
                Chart1.Series.Clear()
                Chart1.Titles.Clear()
                ChartArea1.Name = "ChartArea1"
                ChartArea1.AxisX.IsMarginVisible = False
                Chart1.ChartAreas.Add(ChartArea1)
                Legend1.Name = "Legend1"
                Chart1.Legends.Add(Legend1)
                Chart1.Name = "Chart1"
                Series1.ChartArea = "ChartArea1"
                Series1.Legend = "Legend1"
                Series1.Name = "Presenze al ritardo"
                Series1.ChartType = SeriesChartType.Column
                Series1.Color = Color.Red
                Series1.BorderWidth = 2
                Chart1.Series.Add(Series1)
                Chart1.Text = "Distibuzione ritardi "
                Chart1.Series("Presenze al ritardo").XValueMember = "x"
                Chart1.Series("Presenze al ritardo").YValueMembers = "y"

                Chart1.Titles.Add(Chart1.Text)


                Chart1.DataSource = table


Devo crearmi un array integer? come per esempio fittizio

Codice:
 Dim Ritardo(101) As Integer
                For k = 0 To UBound(Ritardo)

                    If k < 100 Then
                        table.Rows.Add("= " & k, 0)
                    Else
                        table.Rows.Add("> " & "100", 0)
                    End if 
                Next

ma alla cordinata y inserire il numero di presenze a quel ritardo?
 
devi prima fare i conteggi sfruttando l'array di transito.
cicli sulle uscite , verifichi il ritardo se è <= 100 se lo è incrementi quell'elemento se non lo è incrementi il 101
ora che hai fatto i conteggi cicli su questo array ed alimenti la datatable , le righe ovvero la x va da 0 a 101 , i valori son oquelli presi dall'array in quelle posizioni
 
No nulla. Dalle 12 sto provando e riprovando ma più che comprendere cosa scrivo sto finendo per andare a tentativi. Appena riesco a capire posto il codice 👍
 
scusa è , tu hai un arry delel uscite , fai finta contiene 5 elementi

vuol dire che cisono 6 uscite da 0 a 6.

la prima facciamo finta è uscita al ritardo 3
aQUscitePerRit(3) +=1

la seconda facciamo finta è uscita al ritardo 5
aQUscitePerRit(5) +=1

la terza facciamo finta è uscita al ritardo 0
aQUscitePerRit(0) +=1

la quarta facciamo finta è uscita pure lei al ritardo 0
aQUscitePerRit(0) +=1

la quinta facciamo finta è uscita al ritardo 120
aQUscitePerRit(101) +=1

la sesta facciamo finta è uscita al ritardo 110
aQUscitePerRit(101) +=1


alla fine nel tuo arrayavrai per ogni indice la quantita di uscite , l'indice è la x , la quntità l y
 
Ultima modifica di un moderatore:
Quindi se ho capito bene

Codice:
                Dim aQUscitePerRit(101) As Integer
                Dim strRit As String
                For k = 0 To UBound(frz.aUscite)
                    If frz.aUscite(k).Ritardo <= 100 Then
                        aQUscitePerRit(frz.aUscite(k).Ritardo) += 1
                    Else
                        aQUscitePerRit(101) += 1
                    End If
                Next

                For k = 0 To UBound(aQUscitePerRit)
                    strRit = ""
                    If k <= 100 Then
                        strRit = strRit & "= " & k
                    Else
                        strRit = strRit & "> " & k
                    End If
                    table.Rows.Add(strRit, aQUscitePerRit(k))
                Next
 
si , dovrebeb andare , al selectedindex change della combo tipo grafico ovviamente devi lanciare la stessa funzione che lanci al selection change delal lista principale in modo che i lgrafico si accordi alla voce selezionata
 
Sicuramente no ...ma seguendo il debug vedo che entra nell'else e mi inserisce la stringa che poi inserisce > 101 perché ho messo il parametro k e non 100 ...ma comunque non viene trascritta
 
invece nel grafico deel confronto la y teorica falla di tipo single non integer , ti se iaccorto che ha uno stano andamento quando invece dovrebbe essere una linea che cresce sempre ? dipende dal fatto chela divisione tra estrazioni esaminate e ritardo naturale puo dare un valore decimale , quindi se lascviamo integer vine arrotondato e la lina non vine disegnata come una retta ma pina dippiccole curve come dei tremolii.
 
Senza titolo.png

L'intervallo ...non ci avevo pensato scusami. Comunque ora che è concluso il secondo grafico ...ho notato che nel primo grafico c'è un anomalia ma non so se sbaglio
 
bene passiamo al pannell oscomposizione , li ci va messa una lista tale e quale a quella principale e una combobox con valori da 1 a 10 , a fianco della combobox un pulsante.
Facciamo che è l'utente a premere il pulsante per scomporre la dfornazione nella classe voluta perche sarebbe oneroso farlo durante la prima statistica.
 
fatto

Codice:
    Private Sub frmStatLung_Load(sender As Object, e As EventArgs) Handles Me.Load
        LoadComboSorte(cmbSorte)
        LoadComboConf()
        loadComboSvil(Me.ComboBox1)
        addcolumns()
        CtlSelPosizione1.SetCheckSelezionate(DefaultCheckPos())
    End Sub

Codice:
    Private Sub loadComboSvil(cmb As ComboBox)
        For k As Integer = 1 To 10
            cmb.Items.Add(k)
        Next
    End Sub

Senza titolo.png
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 11 gennaio 2025
    Bari
    73
    43
    01
    58
    81
    Cagliari
    69
    60
    18
    02
    10
    Firenze
    25
    32
    18
    55
    54
    Genova
    48
    05
    40
    34
    69
    Milano
    10
    07
    70
    44
    79
    Napoli
    11
    89
    01
    34
    80
    Palermo
    37
    80
    82
    44
    77
    Roma
    78
    04
    38
    39
    56
    Torino
    08
    13
    30
    27
    24
    Venezia
    56
    75
    36
    18
    70
    Nazionale
    63
    83
    19
    31
    80
    Estrazione Simbolotto
    Bari
    35
    34
    12
    23
    20
Indietro
Alto