3

シナリオ: Flot JS を使用して、1 分ごとのデータを使用して出来高の棒グラフをプロットしています。たとえば、3 時間で 3 x 60 のデータ ポイントがデータベースから取得されます。

問題:そこには 6 時間分のデータ ポイントがあり、グラフの幅は 250 ピクセルしかないため、バーの幅はそれぞれ 1 ピクセルしかなく、余白はありません。Flot Charts にデータのグループ化オプションがあり、15 分または 30 分ごとのボリューム データを平均化するように指示できるかどうか疑問に思っていました。

$.plot('#flot-vol, [{
    color: '#fff',
    bars: { show: true },
    data: dataV
}], {
    grid: { show: false },
    shadowSize: false
});

ハイ チャートには、日/週/月ごとに特定のデータをグループ化できる GroupData オプションがあります。Flot Charts にそのような機能があるかどうか疑問に思っていましたか?

MySQL を使用してデータをグループ化する必要がある場合、次の MySQL ステートメントがある場合、データを 30 分ごとにグループ化するにはどうすればよいですか? 現在、ティッカーという名前のテーブルから最新の日付のすべてのボリュームを取得しています。

SELECT UNIX_TIMESTAMP(`Timestamp`), `Volume` from `Ticker` WHERE CompID = 'symbol' AND Date(`Timestamp`) = (SELECT Max(Date(`Timestamp`)) FROM `Ticker`)

アップデート:

答えを明らかにしてくれた Ryley に感謝します. 機能したMySQLステートメント

SELECT UNIX_TIMESTAMP(`Timestamp`), AVG(`Volume`) FROM `Ticker` WHERE `CompID` = 'symbol' AND Date(`Timestamp`) = (SELECT Max(Date(`Timestamp`)) FROM `Ticker`) GROUP BY (UNIX_TIMESTAMP(`Timestamp`) DIV 30*60)
4

1 に答える 1