Browse Source

Add localtime config for X axis data

pull/343/head
Adam Bryzak 10 years ago
parent
commit
60114ee174
  1. 12
      c3.js
  2. 6
      c3.min.js

12
c3.js

@ -143,6 +143,7 @@
var __data_x = getConfig(['data', 'x']), var __data_x = getConfig(['data', 'x']),
__data_xs = getConfig(['data', 'xs'], {}), __data_xs = getConfig(['data', 'xs'], {}),
__data_x_format = getConfig(['data', 'x_format'], '%Y-%m-%d'), __data_x_format = getConfig(['data', 'x_format'], '%Y-%m-%d'),
__data_x_localtime = getConfig(['data', 'x_localtime'], true),
__data_id_converter = getConfig(['data', 'id_converter'], function (id) { return id; }), __data_id_converter = getConfig(['data', 'id_converter'], function (id) { return id; }),
__data_names = getConfig(['data', 'names'], {}), __data_names = getConfig(['data', 'names'], {}),
__data_classes = getConfig(['data', 'classes'], {}), __data_classes = getConfig(['data', 'classes'], {}),
@ -346,8 +347,9 @@
color = generateColor(__data_colors, notEmpty(__color_pattern) ? __color_pattern : defaultColorPattern, __data_color), color = generateColor(__data_colors, notEmpty(__color_pattern) ? __color_pattern : defaultColorPattern, __data_color),
levelColor = notEmpty(__color_threshold) ? generateLevelColor(__color_pattern, __color_threshold) : null; levelColor = notEmpty(__color_threshold) ? generateLevelColor(__color_pattern, __color_threshold) : null;
var timeFormat = __axis_x_localtime ? d3.time.format : d3.time.format.utc, var dataTimeFormat = __data_x_localtime ? d3.time.format : d3.time.format.utc,
defaultTimeFormat = timeFormat.multi([ axisTimeFormat = __axis_x_localtime ? d3.time.format : d3.time.format.utc,
defaultAxisTimeFormat = axisTimeFormat.multi([
[".%L", function (d) { return d.getMilliseconds(); }], [".%L", function (d) { return d.getMilliseconds(); }],
[":%S", function (d) { return d.getSeconds(); }], [":%S", function (d) { return d.getSeconds(); }],
["%I:%M", function (d) { return d.getMinutes(); }], ["%I:%M", function (d) { return d.getMinutes(); }],
@ -808,13 +810,13 @@
return id in __data_axes ? __data_axes[id] : 'y'; return id in __data_axes ? __data_axes[id] : 'y';
} }
function getXAxisTickFormat() { function getXAxisTickFormat() {
var format = isTimeSeries ? defaultTimeFormat : isCategorized ? categoryName : function (v) { return v < 0 ? v.toFixed(0) : v; }; var format = isTimeSeries ? defaultAxisTimeFormat : isCategorized ? categoryName : function (v) { return v < 0 ? v.toFixed(0) : v; };
if (__axis_x_tick_format) { if (__axis_x_tick_format) {
if (typeof __axis_x_tick_format === 'function') { if (typeof __axis_x_tick_format === 'function') {
format = __axis_x_tick_format; format = __axis_x_tick_format;
} else if (isTimeSeries) { } else if (isTimeSeries) {
format = function (date) { format = function (date) {
return date ? timeFormat(__axis_x_tick_format)(date) : ""; return date ? axisTimeFormat(__axis_x_tick_format)(date) : "";
}; };
} }
} }
@ -2333,7 +2335,7 @@
parsedDate = date; parsedDate = date;
} else { } else {
try { try {
parsedDate = typeof date === 'number' ? new Date(date) : d3.time.format(__data_x_format).parse(date); parsedDate = typeof date === 'number' ? new Date(date) : dataTimeFormat(__data_x_format).parse(date);
} catch (e) { } catch (e) {
window.console.error("Failed to parse x '" + date + "' to Date with format " + __data_x_format); window.console.error("Failed to parse x '" + date + "' to Date with format " + __data_x_format);
} }

6
c3.min.js vendored

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save