2014-09-24 18 views
0

我有一個系列:日期時間格式和y值的x值只是數字。我需要使圖形從0開始,並以小時爲單位遞增。所以如果我的系列賽在星期二的12點開始,直到星期四上午5點,星期二的12點將是0,星期四的凌晨5點將是41.沒有線索如何轉換這個。如何使時間序列從0開始(以小時爲單位)

+0

downvote沒有解釋?? – Luminous 2014-09-24 20:51:40

+0

更好的是最後一個問題,不要刪除它,而是回答它,以便將來任何人都可以使用您的問題並提供幫助。 – Aristos 2015-01-07 20:53:05

回答

0

我想出了答案:

dim startDate as integer = DateTime.now 
dim startDay as integer = startDate.dayOfYear 
dim startHour as integer = startDate.hour 
dim startMinute as integer = startDate.minute 
dim startSecond as integer = startDate.second 

對於額外的精度我還包括毫秒

dim startMillisecond as integer = startDate.millisecond 

當它的時間來計算小時的時差:

timeDifference = ((thisDay - startDay) * 24) + (thisHour - startHour) + ((thisMinute - startMinute)/60) + ((thisSecond - startSecond)/3600) + ((thisMillisecond - startMillisecond)/3600000) 

thisDay,thisHour,thisMinute,thisSecond,thisMillisecond的計算方法與啓動變量的計算方法相同。

+0

*我想出了答案:*。你拿着我的代碼,做了一些改變,併發布爲你的解決方案!尼斯。什麼是一個不切實際的行爲。 – 2014-09-25 19:28:47

+0

你的回答是'(thisDate - startDate).day + thisHour - startHour'。這隻會在範圍0-24之間發佈。我的例子有0-41的範圍。由於您的答案不包括分鐘,它也會在一個小時內發佈所有值,這些值不是所期望的,並且IMO沒有意義。你之前發佈的答案並不完整,因爲它確實有一個開始我想要的,所以感謝你的出發點。 – Luminous 2014-09-25 19:49:28

+1

我的答案是* Dim hoursPassed As Integer =(endDate - startDate)* 24 + hourEnd - hourStart *。你忘了(我不確定)看到'* 24'部分!如果我正確地重新輸入,你的問題標題**是** *如何使時間序列從0開始(以小時爲單位)*。你看到在**小時**說的部分嗎?它不會說分鐘或秒或毫秒。可以?? – 2014-09-25 19:53:55

相關問題