Skip to content

Commit 31e4a94

Browse files
committed
Fix data in financial sample
1 parent ddee91e commit 31e4a94

File tree

1 file changed

+21
-3
lines changed

1 file changed

+21
-3
lines changed

samples/scales/time/financial.html

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,20 @@
3737
<button id="update">update</button>
3838
<script>
3939
function generateData() {
40+
/**
41+
* Returns true if outside 9:30am-4pm on a weekday
42+
*/
43+
function outsideMarketHours(date) {
44+
if (date.isoWeekday() > 5) {
45+
return true;
46+
}
47+
if ((unit == 'second' || unit == 'minute' || unit == 'hour')
48+
&& ((date.hour() < 9 && date.minute() < 30) || date.hour() > 16)) {
49+
return true;
50+
}
51+
return false;
52+
}
53+
4054
function randomNumber(min, max) {
4155
return Math.random() * (max - min) + min;
4256
}
@@ -54,10 +68,14 @@
5468
var now = moment();
5569
var data = [];
5670
var unit = document.getElementById('unit').value;
57-
for (; data.length < 60 && date.isBefore(now); date = date.clone().add(1, unit)) {
58-
if (date.isoWeekday() <= 5) {
59-
data.push(randomBar(date, data.length > 0 ? data[data.length - 1].y : 30));
71+
for (; data.length < 60 && date.isBefore(now); date = date.clone().add(1, unit).startOf(unit)) {
72+
if (outsideMarketHours(date)) {
73+
date = date.clone().add(8 - date.isoWeekday(), 'day');
74+
if ((unit == 'second' || unit == 'minute' || unit == 'hour')) {
75+
date = date.hour(9).minute(30).second(0);
76+
}
6077
}
78+
data.push(randomBar(date, data.length > 0 ? data[data.length - 1].y : 30));
6179
}
6280

6381
return data;

0 commit comments

Comments
 (0)