// Tracks whether the mouse is down right now
var isZooming = false;
+ var isPanning = false;
var dragStartX = null;
var dragStartY = null;
var dragEndX = null;
dragStartX = getX(event);
dragStartY = getY(event);
- if (event.altKey) {
+ if (event.altKey || event.shiftKey) {
if (!self.dateWindow_) return; // have to be zoomed in to pan.
isPanning = true;
dateRange = self.dateWindow_[1] - self.dateWindow_[0];
var ret = [];
for (var i = 0; i < rows; i++) {
var row = [];
- if (!data.getValue(i, 0)) continue;
+ if (typeof(data.getValue(i, 0)) === 'undefined' ||
+ data.getValue(i, 0) === null) {
+ this.warning("Ignoring row " + i +
+ " of DataTable because of undefined or null first column.");
+ continue;
+ }
+
if (indepType == 'date') {
row.push(data.getValue(i, 0).getTime());
} else {