highcharts-rails 4.2.3 → 4.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.markdown +56 -0
- data/README.markdown +2 -3
- data/app/assets/javascripts/highcharts.js +343 -203
- data/app/assets/javascripts/highcharts/highcharts-3d.js +119 -14
- data/app/assets/javascripts/highcharts/highcharts-more.js +61 -39
- data/app/assets/javascripts/highcharts/modules/boost.js +28 -6
- data/app/assets/javascripts/highcharts/modules/broken-axis.js +5 -7
- data/app/assets/javascripts/highcharts/modules/canvas-tools.js +1 -1
- data/app/assets/javascripts/highcharts/modules/data.js +1 -1
- data/app/assets/javascripts/highcharts/modules/drilldown.js +23 -15
- data/app/assets/javascripts/highcharts/modules/exporting.js +1 -1
- data/app/assets/javascripts/highcharts/modules/funnel.js +2 -10
- data/app/assets/javascripts/highcharts/modules/heatmap.js +1 -1
- data/app/assets/javascripts/highcharts/modules/no-data-to-display.js +2 -2
- data/app/assets/javascripts/highcharts/modules/offline-exporting.js +1 -1
- data/app/assets/javascripts/highcharts/modules/solid-gauge.js +1 -1
- data/app/assets/javascripts/highcharts/modules/treemap.js +26 -12
- data/lib/highcharts/version.rb +1 -1
- metadata +2 -2
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* Highcharts JS v4.2.
|
2
|
+
* Highcharts JS v4.2.4 (2016-04-14)
|
3
3
|
* Highcharts Broken Axis module
|
4
4
|
*
|
5
5
|
* License: www.highcharts.com/license
|
@@ -289,21 +289,19 @@
|
|
289
289
|
|
290
290
|
function drawPointsWrapped(proceed) {
|
291
291
|
proceed.apply(this);
|
292
|
-
this.drawBreaks();
|
292
|
+
this.drawBreaks(this.xAxis, ['x']);
|
293
|
+
this.drawBreaks(this.yAxis, pick(this.pointArrayMap, ['y']));
|
293
294
|
}
|
294
295
|
|
295
|
-
H.Series.prototype.drawBreaks = function () {
|
296
|
+
H.Series.prototype.drawBreaks = function (axis, keys) {
|
296
297
|
var series = this,
|
297
298
|
points = series.points,
|
298
|
-
axis,
|
299
299
|
breaks,
|
300
300
|
threshold,
|
301
|
-
axisName = 'Axis',
|
302
301
|
eventName,
|
303
302
|
y;
|
304
303
|
|
305
|
-
each(
|
306
|
-
axis = series[key + axisName];
|
304
|
+
each(keys, function (key) {
|
307
305
|
breaks = axis.breakArray || [];
|
308
306
|
threshold = axis.isXAxis ? axis.min : pick(series.options.threshold, axis.min);
|
309
307
|
each(points, function (point) {
|
@@ -2908,7 +2908,7 @@ if (CanvasRenderingContext2D) {
|
|
2908
2908
|
});
|
2909
2909
|
}
|
2910
2910
|
}/**
|
2911
|
-
* @license Highcharts JS v4.2.
|
2911
|
+
* @license Highcharts JS v4.2.4 (2016-04-14)
|
2912
2912
|
* CanVGRenderer Extension module
|
2913
2913
|
*
|
2914
2914
|
* (c) 2011-2016 Torstein Honsi, Erik Olsson
|
@@ -350,6 +350,9 @@
|
|
350
350
|
}
|
351
351
|
}
|
352
352
|
|
353
|
+
// Fire a once-off event after all series have been drilled up (#5158)
|
354
|
+
fireEvent(chart, 'drillupall');
|
355
|
+
|
353
356
|
this.redraw();
|
354
357
|
|
355
358
|
if (this.drilldownLevels.length === 0) {
|
@@ -526,7 +529,7 @@
|
|
526
529
|
});
|
527
530
|
}
|
528
531
|
|
529
|
-
H.Point.prototype.doDrilldown = function (_holdRedraw, category) {
|
532
|
+
H.Point.prototype.doDrilldown = function (_holdRedraw, category, originalEvent) {
|
530
533
|
var series = this.series,
|
531
534
|
chart = series.chart,
|
532
535
|
drilldown = chart.options.drilldown,
|
@@ -550,29 +553,34 @@
|
|
550
553
|
point: this,
|
551
554
|
seriesOptions: seriesOptions,
|
552
555
|
category: category,
|
556
|
+
originalEvent: originalEvent,
|
553
557
|
points: category !== undefined && this.series.xAxis.ddPoints[category].slice(0)
|
558
|
+
}, function (e) {
|
559
|
+
var chart = e.point.series && e.point.series.chart,
|
560
|
+
seriesOptions = e.seriesOptions;
|
561
|
+
if (chart && seriesOptions) {
|
562
|
+
if (_holdRedraw) {
|
563
|
+
chart.addSingleSeriesAsDrilldown(e.point, seriesOptions);
|
564
|
+
} else {
|
565
|
+
chart.addSeriesAsDrilldown(e.point, seriesOptions);
|
566
|
+
}
|
567
|
+
}
|
554
568
|
});
|
555
569
|
|
556
|
-
|
557
|
-
if (_holdRedraw) {
|
558
|
-
chart.addSingleSeriesAsDrilldown(this, seriesOptions);
|
559
|
-
} else {
|
560
|
-
chart.addSeriesAsDrilldown(this, seriesOptions);
|
561
|
-
}
|
562
|
-
}
|
570
|
+
|
563
571
|
};
|
564
572
|
|
565
573
|
/**
|
566
574
|
* Drill down to a given category. This is the same as clicking on an axis label.
|
567
575
|
*/
|
568
|
-
H.Axis.prototype.drilldownCategory = function (x) {
|
576
|
+
H.Axis.prototype.drilldownCategory = function (x, e) {
|
569
577
|
var key,
|
570
578
|
point,
|
571
579
|
ddPointsX = this.ddPoints[x];
|
572
580
|
for (key in ddPointsX) {
|
573
581
|
point = ddPointsX[key];
|
574
582
|
if (point && point.series && point.series.visible && point.doDrilldown) { // #3197
|
575
|
-
point.doDrilldown(true, x);
|
583
|
+
point.doDrilldown(true, x, e);
|
576
584
|
}
|
577
585
|
}
|
578
586
|
this.chart.applyDrilldown();
|
@@ -612,8 +620,8 @@
|
|
612
620
|
label
|
613
621
|
.addClass('highcharts-drilldown-axis-label')
|
614
622
|
.css(axis.chart.options.drilldown.activeAxisLabelStyle)
|
615
|
-
.on('click', function () {
|
616
|
-
axis.drilldownCategory(pos);
|
623
|
+
.on('click', function (e) {
|
624
|
+
axis.drilldownCategory(pos, e);
|
617
625
|
});
|
618
626
|
|
619
627
|
} else if (label && label.basicStyles) {
|
@@ -645,11 +653,11 @@
|
|
645
653
|
if (point.drilldown) {
|
646
654
|
|
647
655
|
// Add the click event to the point
|
648
|
-
H.addEvent(point, 'click', function () {
|
656
|
+
H.addEvent(point, 'click', function (e) {
|
649
657
|
if (series.xAxis && series.chart.options.drilldown.allowPointDrilldown === false) {
|
650
|
-
series.xAxis.drilldownCategory(x);
|
658
|
+
series.xAxis.drilldownCategory(x, e);
|
651
659
|
} else {
|
652
|
-
point.doDrilldown();
|
660
|
+
point.doDrilldown(undefined, undefined, e);
|
653
661
|
}
|
654
662
|
});
|
655
663
|
/*wrap(point, 'importEvents', function (proceed) { // wrapping importEvents makes point.click event work
|
@@ -23,8 +23,7 @@ var defaultOptions = Highcharts.getOptions(),
|
|
23
23
|
seriesTypes = Highcharts.seriesTypes,
|
24
24
|
merge = Highcharts.merge,
|
25
25
|
noop = function () {},
|
26
|
-
each = Highcharts.each
|
27
|
-
pick = Highcharts.pick;
|
26
|
+
each = Highcharts.each;
|
28
27
|
|
29
28
|
// set default options
|
30
29
|
defaultPlotOptions.funnel = merge(defaultPlotOptions.pie, {
|
@@ -229,24 +228,17 @@ seriesTypes.funnel = Highcharts.extendClass(seriesTypes.pie, {
|
|
229
228
|
*/
|
230
229
|
drawPoints: function () {
|
231
230
|
var series = this,
|
232
|
-
options = series.options,
|
233
231
|
chart = series.chart,
|
234
232
|
renderer = chart.renderer,
|
235
|
-
pointOptions,
|
236
233
|
pointAttr,
|
237
234
|
shapeArgs,
|
238
235
|
graphic;
|
239
236
|
|
240
237
|
each(series.data, function (point) {
|
241
|
-
pointOptions = point.options;
|
242
238
|
graphic = point.graphic;
|
243
239
|
shapeArgs = point.shapeArgs;
|
244
240
|
|
245
|
-
pointAttr =
|
246
|
-
fill: point.color,
|
247
|
-
stroke: pick(pointOptions.borderColor, options.borderColor),
|
248
|
-
'stroke-width': pick(pointOptions.borderWidth, options.borderWidth)
|
249
|
-
};
|
241
|
+
pointAttr = point.pointAttr[point.selected ? 'select' : ''];
|
250
242
|
|
251
243
|
if (!graphic) { // Create the shapes
|
252
244
|
point.graphic = renderer.path(shapeArgs)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v4.2.
|
2
|
+
* @license Highcharts JS v4.2.4 (2016-04-14)
|
3
3
|
* Plugin for displaying a message when there is no data visible in chart.
|
4
4
|
*
|
5
5
|
* (c) 2010-2016 Highsoft AS
|
@@ -52,7 +52,7 @@
|
|
52
52
|
return !!this.points.length; /* != 0 */
|
53
53
|
}
|
54
54
|
|
55
|
-
each(['pie', 'gauge', 'waterfall', 'bubble'], function (type) {
|
55
|
+
each(['pie', 'gauge', 'waterfall', 'bubble', 'treemap'], function (type) {
|
56
56
|
if (seriesTypes[type]) {
|
57
57
|
seriesTypes[type].prototype.hasData = hasDataPie;
|
58
58
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v4.2.
|
2
|
+
* @license Highcharts JS v4.2.4 (2016-04-14)
|
3
3
|
*
|
4
4
|
* (c) 2014 Highsoft AS
|
5
5
|
* Authors: Jon Arild Nygard / Oystein Moseng
|
@@ -47,6 +47,7 @@
|
|
47
47
|
return previous;
|
48
48
|
},
|
49
49
|
// @todo find correct name for this function.
|
50
|
+
// @todo Similar to reduce, this function is likely redundant
|
50
51
|
recursive = function (item, func, context) {
|
51
52
|
var next;
|
52
53
|
context = context || this;
|
@@ -79,10 +80,12 @@
|
|
79
80
|
layoutStartingDirection: 'vertical',
|
80
81
|
alternateStartingDirection: false,
|
81
82
|
levelIsConstant: true,
|
83
|
+
opacity: 0.15,
|
82
84
|
states: {
|
83
85
|
hover: {
|
84
86
|
borderColor: '#A0A0A0',
|
85
87
|
brightness: seriesTypes.heatmap ? 0 : 0.1,
|
88
|
+
opacity: 0.75,
|
86
89
|
shadow: false
|
87
90
|
}
|
88
91
|
},
|
@@ -156,6 +159,7 @@
|
|
156
159
|
|
157
160
|
series.nodeMap = [];
|
158
161
|
tree = series.buildNode('', -1, 0, parentList, null);
|
162
|
+
// Parents of the root node is by default visible
|
159
163
|
recursive(this.nodeMap[this.rootNode], function (node) {
|
160
164
|
var next = false,
|
161
165
|
p = node.parent;
|
@@ -165,6 +169,7 @@
|
|
165
169
|
}
|
166
170
|
return next;
|
167
171
|
});
|
172
|
+
// Children of the root node is by default visible
|
168
173
|
recursive(this.nodeMap[this.rootNode].children, function (children) {
|
169
174
|
var next = false;
|
170
175
|
each(children, function (child) {
|
@@ -314,7 +319,7 @@
|
|
314
319
|
y1,
|
315
320
|
y2;
|
316
321
|
// Points which is ignored, have no values.
|
317
|
-
if (values) {
|
322
|
+
if (values && node.visible) {
|
318
323
|
x1 = Math.round(xAxis.translate(values.x, 0, 0, 0, 1));
|
319
324
|
x2 = Math.round(xAxis.translate(values.x + values.width, 0, 0, 0, 1));
|
320
325
|
y1 = Math.round(yAxis.translate(values.y, 0, 0, 0, 1));
|
@@ -587,11 +592,13 @@
|
|
587
592
|
}
|
588
593
|
|
589
594
|
// Update axis extremes according to the root node.
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
+
if (this.options.allowDrillToNode) {
|
596
|
+
val = this.nodeMap[this.rootNode].pointValues;
|
597
|
+
this.xAxis.setExtremes(val.x, val.x + val.width, false);
|
598
|
+
this.yAxis.setExtremes(val.y, val.y + val.height, false);
|
599
|
+
this.xAxis.setScale();
|
600
|
+
this.yAxis.setScale();
|
601
|
+
}
|
595
602
|
|
596
603
|
// Assign values to points.
|
597
604
|
this.setPointValues();
|
@@ -628,6 +635,9 @@
|
|
628
635
|
// Set dataLabel width to the width of the point shape.
|
629
636
|
if (point.shapeArgs) {
|
630
637
|
options.style.width = point.shapeArgs.width;
|
638
|
+
if (point.dataLabel) {
|
639
|
+
point.dataLabel.css({ width: point.shapeArgs.width + 'px' });
|
640
|
+
}
|
631
641
|
}
|
632
642
|
|
633
643
|
// Merge custom options with point options
|
@@ -644,7 +654,8 @@
|
|
644
654
|
var level = this.levelMap[point.node.levelDynamic] || {},
|
645
655
|
options = this.options,
|
646
656
|
attr,
|
647
|
-
stateOptions = (state && options.states[state]) || {}
|
657
|
+
stateOptions = (state && options.states[state]) || {},
|
658
|
+
opacity;
|
648
659
|
|
649
660
|
// Set attributes by precedence. Point trumps level trumps series. Stroke width uses pick
|
650
661
|
// because it can be 0.
|
@@ -661,14 +672,17 @@
|
|
661
672
|
attr.fill = 'none';
|
662
673
|
attr['stroke-width'] = 0;
|
663
674
|
} else if (!point.node.isLeaf) {
|
664
|
-
// If not a leaf,
|
665
|
-
|
666
|
-
|
675
|
+
// If not a leaf, either set opacity or remove fill
|
676
|
+
if (pick(options.interactByLeaf, !options.allowDrillToNode)) {
|
677
|
+
attr.fill = 'none';
|
678
|
+
} else {
|
679
|
+
opacity = pick(stateOptions.opacity, options.opacity);
|
680
|
+
attr.fill = Color(attr.fill).setOpacity(opacity).get();
|
681
|
+
}
|
667
682
|
} else if (state) {
|
668
683
|
// Brighten and hoist the hover nodes
|
669
684
|
attr.fill = Color(attr.fill).brighten(stateOptions.brightness).get();
|
670
685
|
}
|
671
|
-
|
672
686
|
return attr;
|
673
687
|
},
|
674
688
|
|
data/lib/highcharts/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: highcharts-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.2.
|
4
|
+
version: 4.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Per Christian B. Viken
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-05-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|