Skip to content

Commit

Permalink
minor fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
IlyaBeliaev committed Jul 9, 2017
1 parent 43add34 commit 5b1f038
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 40 deletions.
12 changes: 3 additions & 9 deletions src/scales/scale.timebase.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ module.exports = function(Chart) {
var label = chartData.labels && index < chartData.labels.length ? chartData.labels[index] : '';
var value = chartData.datasets[datasetIndex].data[index];

if (value !== null && typeof value === 'object') {
if (helpers.isObject(value)) {
label = me.getRightValue(value);
}

Expand All @@ -37,7 +37,7 @@ module.exports = function(Chart) {

return label;
},
// Function to format an individual tick mark
// Function to format an individual tick mark
tickFormatFunction: function(tick, index, ticks) {
var formattedTick;
var tickClone = tick.clone();
Expand All @@ -57,14 +57,8 @@ module.exports = function(Chart) {

var callback = helpers.valueOrDefault(tickOpts.callback, tickOpts.userCallback);

if (callback) {
return {
value: callback(formattedTick, index, ticks),
major: major
};
}
return {
value: formattedTick,
value: callback ? callback(formattedTick, index, ticks) : formattedTick,
major: major
};
},
Expand Down
69 changes: 38 additions & 31 deletions src/scales/scale.timeseries.js
Original file line number Diff line number Diff line change
Expand Up @@ -58,54 +58,61 @@ module.exports = function(Chart) {
determineDataLimits: function() {
var me = this;
var timeOpts = me.options.time;

var chartData = me.chart.data;
var parsedData = {
labels: [],
datasets: []
};

helpers.each(me.getLabels(), function(label, labelIndex) {
var labelMoment = timeHelpers.parseTime(me, label);
var labels = me.getLabels();
if (labels) {
for (var labelIndex = 0; labelIndex < labels.length; labelIndex++) {
var label = labels[labelIndex];
var labelMoment = timeHelpers.parseTime(me, label);

if (labelMoment.isValid()) {
// We need to round the time
if (timeOpts.round) {
labelMoment.startOf(timeOpts.round);
if (labelMoment.isValid()) {
// We need to round the time
if (timeOpts.round) {
labelMoment.startOf(timeOpts.round);
}
// Store this value for later
parsedData.labels[labelIndex] = labelMoment.valueOf();
}
// Store this value for later
parsedData.labels[labelIndex] = labelMoment.valueOf();
}
});
}

helpers.each(chartData.datasets, function(dataset, datasetIndex) {
var timestamps = [];
if (chartData.datasets) {
for (var datasetIndex = 0; datasetIndex < chartData.datasets.length; datasetIndex++) {
var dataset = chartData.datasets[datasetIndex];
var timestamps = [];

if (typeof dataset.data[0] === 'object' && dataset.data[0] !== null && me.chart.isDatasetVisible(datasetIndex)) {
// We have potential point data, so we need to parse this
helpers.each(dataset.data, function(value, dataIndex) {
var dataMoment = timeHelpers.parseTime(me, me.getRightValue(value));
if (typeof dataset.data[0] === 'object' && dataset.data[0] !== null && me.chart.isDatasetVisible(datasetIndex)) {
// We have potential point data, so we need to parse this
for (var dataIndex = 0; dataIndex < dataset.data.length; dataIndex++) {
var value = dataset.data[dataIndex];
var dataMoment = timeHelpers.parseTime(me, me.getRightValue(value));

if (dataMoment.isValid()) {
if (timeOpts.round) {
dataMoment.startOf(timeOpts.round);
}
if (dataMoment.isValid()) {
if (timeOpts.round) {
dataMoment.startOf(timeOpts.round);
}

timestamps[dataIndex] = dataMoment.valueOf();
timestamps[dataIndex] = dataMoment.valueOf();
}
}
});
} else {
// We have no x coordinates, so use the ones from the labels
timestamps = parsedData.labels.slice();
}
} else {
// We have no x coordinates, so use the ones from the labels
timestamps = parsedData.labels.slice();
}

parsedData.datasets[datasetIndex] = timestamps;
});
parsedData.datasets[datasetIndex] = timestamps;
}
}

var allTimestamps = parsedData.labels;
helpers.each(parsedData.datasets, function(value) {
allTimestamps = allTimestamps.concat(value);
});
for (var parsedDatasetIndex = 0; parsedDatasetIndex < parsedData.datasets.length; parsedDatasetIndex++) {
allTimestamps = allTimestamps.concat(parsedData.datasets[parsedDatasetIndex]);
}

allTimestamps = arrayUnique(allTimestamps).sort(function(a, b) {
return a - b;
Expand Down

0 comments on commit 5b1f038

Please sign in to comment.