我想繪製一個圖形,在X軸上應該顯示一些生產線的名稱,在Y軸上顯示行停止的總時間(EG:110: 43:00h)但我有一些問題。 這裏是我的代碼:在vb.net上繪製小時和分鐘Y軸
Dim cmd As New MySqlCommand
Chart2.Series.Add("Stops")
Try
ConnectDatabase()
With cmd
.Connection = conn
.CommandText = "SELECT X as lines, time_format(SEC_TO_TIME(SUM(abs(TIME_TO_SEC(timediff(Y, Z))))),'%H:%i:%s') AS SUM FROM M, N WHERE a = b GROUP BY P"
End With
Dim objReader As MySqlDataReader = cmd.ExecuteReader
While objReader.Read
Chart2.Series("Stops").Points.AddXY(objReader("lines").ToString, objReader("SUM").ToString)
End While
Catch ex As Exception
If ex.InnerException IsNot Nothing Then
MsgBox(ex.InnerException)
End If
End Try
DisconnectDatabase()
MySQL查詢是正確的,我可以正確地看到X軸,但在Y軸沒有出現,它不繪製任何東西。 你能幫忙嗎?我究竟做錯了什麼?
感謝。
更新:問題已解決。在選擇查詢中,我只需選擇小時數據。
這將有可能看到查詢結果的結構?我只是想知道是否因爲SUM是一個關鍵字,如果這是拋出一個問題。一個快速測試將是將其改爲SUM以外的其他內容,並修復系列參數以反映更改。 –
我做了一個測試,並改變了軸,我的意思是,我把SUM放在X軸上,Y軸放在線上。 SUM出現並且名稱行號爲。所以問題需要在Y軸上,但我不明白爲什麼... – vallete7
所以一個典型的SUM結果會像'110:43:00h'?因爲它正在尋找一個數值。如果這代表110小時43分鐘,你可能需要把它變成代表110.72的數字,即110.72小時或110小時和43/60小時。 –