Oppure

Loading
21/08/09 20:04
PeppeTesh
ciao ragazzi
n-esimo problema...

in 1 form ho 2 textbox 1 controllo mschart ed 1 commandbutton

il command mi carica nel grafico i valori del Text1 in sequenza nel grafico

MSChart1.ChartData = Split(Text1.Text, vbCrLf) (questi sono i valori delle ordinate y)

1) il grafico esce a barre (defoult); come posso fare ad avere un semplice grafico cartesiano 2d con la curva avviata?? sarebbe bello anche evidenziare i punti

2) c'è una seconda textbox in cui ho i valori delle ascisse x

avevo pensato di definire il grafico con MSChart1.chartType = VtChChartType2dXY

ma forse chiedo troppo e sto facendo solo un grande casino

datemi un consiglio (tranne abbandonare il progetto)
(a quel paese ci sono gia stato + di una volta)

help help help, please

aaa
22/08/09 17:47
DartPeppe
ciao ragazzi

anche oggi non sono riuscito a concludere un bit :doubt:
sono stato tutta la giornata a cercare info x il problema ma niente da fare
spero che a voi sia andata meglio

byeeeeeeeee
aaa
23/08/09 6:41
Louis
Ciao Peppe,
ti posto un esempio; poi consulta la guida che fornisce codice utilizzabile immediatamente.
In particolare e consigliabile utilizzare la matrice arrData associata al controllo.
Option Base 1
Private Sub Form_Click()
   With MSChart1
      .chartType = VtChChartType3dLine
   
      .Plot.Axis(VtChAxisIdZ).Labels(1).VtFont.Size = 24
      .DataGrid.ColumnLabel(1, 1) = "Etichetta Z1"
      .DataGrid.ColumnLabel(2, 1) = "Etichetta Z2"
      .DataGrid.ColumnLabel(3, 1) = "Etichetta Z3"
   End With
End Sub
'------------------------------------
Private Sub Form_Load()

' La prima serie include le etichette dell'asse X.
   Dim arrData(4, 1 To 4)
   arrData(1, 1) = "Gen"
   arrData(2, 1) = "Feb"
   arrData(3, 1) = "Mar"
   arrData(4, 1) = "Apr"
   
   arrData(1, 2) = 8
   arrData(2, 2) = 4
   arrData(3, 2) = 0.3
   arrData(4, 2) = 3
   
   arrData(1, 3) = 0.2
   arrData(2, 3) = 3
   arrData(3, 3) = 6.3
   arrData(4, 3) = 2
   
   arrData(1, 4) = 5
   arrData(2, 4) = 7
   arrData(3, 4) = 2
   arrData(4, 4) = 9
   MSChart1.ChartData = arrData

End Sub

aaa
26/08/09 21:34
DartPeppe
Ciao Ragazzi
sono appena tornato dalle ferie e non avendo connessione non ho potuto continuare a chiedere aiuto

Louis ho seguito il tuo aiuto ma non sono riuscito a risolvere il problema
l'esempio della msdn genera un grafico a barre con i soli 4 valori per ogni insieme mentre io vorrei diagrammare in un semplice grafico cartesiano una serie di n valori sequenziali inseriti in 2 textbox (in una le x e nell'altra le corrispondenti y)
come se fosse un grafico di excel

per favore aiutatemi
non riesco proprio a trovare nulla
forse sono un idiota ma davvero non ci riesco
aaa
27/08/09 1:24
Louis
Guarda che evidentemente non hai dichiarato, o settato nelle proprietà, il tipo di grafico. Infatti con questa dichiarazione ottieni un graf. lineare a 3 dimensioni
With MSChart1
.chartType = VtChChartType3dLine
'....
e non
...l'esempio della msdn genera un grafico a barre con i soli 4 valori per ogni insieme...


Leggendo anche il tuo primo post emerge questo errore.
Quindi ti consiglio di verificare con calma i valori.
aaa
27/08/09 9:51
DartPeppe
questa è una bozza del codice

Private Sub Command1_Click()
Dim x() As String, y() As String
Dim i, n As Integer

x = Split(Text1.Text, vbCrLf) 'lettura righe
y = Split(Text2.Text, vbCrLf)
n = UBound(x) 'conta numero righe
Text3.Text = CStr(n)

With MSChart1
.chartType = VtChChartType2dLine
'------------------------------------
For i = 1 To n

Dim arrData(x, y) '
arrData(x(i), n) = y(i)

MSChart1.ChartData = arrData
Next i

End With
End Sub

dove è l'errore? o meglio gli errori?
ci sto impazzendo senza successo
l'obbiettivo è semplicemente diagrammare una funzione y=y(x)
con i valori nelle rispettive textbox

allego anche il file
aaa
30/08/09 18:05
DartPeppe
niente da fare??
sto perdendo le speranze
non trovo esempi
continuo a riprovare

ciaoooooooooo
aaa
30/08/09 18:54
GrG
non so se sto dicendo una caz*ata (probabile :asd:)

comunque nell'esempio di msdn c'è
chartType = VtChChartType3dLine

tu invece usi
chartType = VtChChartType2dLine
aaa