@carbon/charts 0.53.3 → 0.54.1
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.
- package/CHANGELOG.md +44 -0
- package/build/demo/data/CHART_TYPES.d.ts +5 -0
- package/build/demo/data/heatmap.d.ts +96 -0
- package/build/demo/data/index.d.ts +1 -0
- package/build/src/charts/heatmap.d.ts +10 -0
- package/build/src/charts/index.d.ts +1 -0
- package/build/src/components/axes/axis.d.ts +7 -1
- package/build/src/components/axes/hover-axis.d.ts +10 -0
- package/build/src/components/axes/toolbar.d.ts +5 -1
- package/build/src/components/essentials/color-scale-legend.d.ts +11 -0
- package/build/src/components/graphs/heatmap.d.ts +25 -0
- package/build/src/components/index.d.ts +2 -0
- package/build/src/configuration-non-customizable.d.ts +12 -0
- package/build/src/configuration.d.ts +2 -1
- package/build/src/interfaces/charts.d.ts +35 -2
- package/build/src/interfaces/components.d.ts +19 -0
- package/build/src/interfaces/enums.d.ts +24 -1
- package/build/src/interfaces/events.d.ts +15 -2
- package/build/src/model/cartesian-charts.d.ts +8 -1
- package/build/src/model/heatmap.d.ts +57 -0
- package/build/src/services/scales-cartesian.d.ts +1 -0
- package/bundle.js +1 -1
- package/charts/heatmap.d.ts +10 -0
- package/charts/heatmap.js +138 -0
- package/charts/heatmap.js.map +1 -0
- package/charts/index.d.ts +1 -0
- package/charts/index.js +1 -0
- package/charts/index.js.map +1 -1
- package/components/axes/axis.d.ts +7 -1
- package/components/axes/axis.js +9 -2
- package/components/axes/axis.js.map +1 -1
- package/components/axes/hover-axis.d.ts +10 -0
- package/components/axes/hover-axis.js +235 -0
- package/components/axes/hover-axis.js.map +1 -0
- package/components/axes/toolbar.d.ts +5 -1
- package/components/axes/toolbar.js +94 -34
- package/components/axes/toolbar.js.map +1 -1
- package/components/axes/two-dimensional-axes.js +8 -3
- package/components/axes/two-dimensional-axes.js.map +1 -1
- package/components/essentials/color-scale-legend.d.ts +11 -0
- package/components/essentials/color-scale-legend.js +236 -0
- package/components/essentials/color-scale-legend.js.map +1 -0
- package/components/graphs/heatmap.d.ts +25 -0
- package/components/graphs/heatmap.js +369 -0
- package/components/graphs/heatmap.js.map +1 -0
- package/components/index.d.ts +2 -0
- package/components/index.js +2 -0
- package/components/index.js.map +1 -1
- package/configuration-non-customizable.d.ts +12 -0
- package/configuration-non-customizable.js +13 -0
- package/configuration-non-customizable.js.map +1 -1
- package/configuration.d.ts +2 -1
- package/configuration.js +13 -1
- package/configuration.js.map +1 -1
- package/demo/data/CHART_TYPES.d.ts +5 -0
- package/demo/data/CHART_TYPES.js +5 -0
- package/demo/data/CHART_TYPES.js.map +1 -1
- package/demo/data/bundle.js +1 -1
- package/demo/data/heatmap.d.ts +96 -0
- package/demo/data/heatmap.js +1135 -0
- package/demo/data/heatmap.js.map +1 -0
- package/demo/data/index.d.ts +1 -0
- package/demo/data/index.js +30 -0
- package/demo/data/index.js.map +1 -1
- package/demo/data/toolbar.js +12 -0
- package/demo/data/toolbar.js.map +1 -1
- package/demo/styles.css +16458 -9179
- package/demo/styles.css.map +1 -1
- package/demo/styles.min.css +1 -1
- package/demo/styles.min.css.map +1 -1
- package/demo/tsconfig.tsbuildinfo +19 -5
- package/interfaces/charts.d.ts +35 -2
- package/interfaces/charts.js.map +1 -1
- package/interfaces/components.d.ts +19 -0
- package/interfaces/components.js.map +1 -1
- package/interfaces/enums.d.ts +24 -1
- package/interfaces/enums.js +26 -0
- package/interfaces/enums.js.map +1 -1
- package/interfaces/events.d.ts +15 -2
- package/interfaces/events.js +14 -0
- package/interfaces/events.js.map +1 -1
- package/model/cartesian-charts.d.ts +8 -1
- package/model/cartesian-charts.js +4 -2
- package/model/cartesian-charts.js.map +1 -1
- package/model/heatmap.d.ts +57 -0
- package/model/heatmap.js +289 -0
- package/model/heatmap.js.map +1 -0
- package/package.json +1 -1
- package/services/canvas-zoom.js +1 -1
- package/services/canvas-zoom.js.map +1 -1
- package/services/scales-cartesian.d.ts +1 -0
- package/services/scales-cartesian.js +16 -0
- package/services/scales-cartesian.js.map +1 -1
- package/services/zoom.js +5 -0
- package/services/zoom.js.map +1 -1
- package/styles/color-palatte.scss +96 -0
- package/styles/colors.scss +35 -1
- package/styles/components/_axis.scss +41 -0
- package/styles/components/_color-legend.scss +24 -0
- package/styles/components/index.scss +1 -0
- package/styles/graphs/_heatmap.scss +70 -0
- package/styles/graphs/index.scss +1 -0
- package/styles-g10.css +2000 -179
- package/styles-g10.css.map +1 -1
- package/styles-g10.min.css +1 -1
- package/styles-g10.min.css.map +1 -1
- package/styles-g100.css +2003 -182
- package/styles-g100.css.map +1 -1
- package/styles-g100.min.css +1 -1
- package/styles-g100.min.css.map +1 -1
- package/styles-g90.css +2004 -180
- package/styles-g90.css.map +1 -1
- package/styles-g90.min.css +1 -1
- package/styles-g90.min.css.map +1 -1
- package/styles.css +2000 -179
- package/styles.css.map +1 -1
- package/styles.min.css +1 -1
- package/styles.min.css.map +1 -1
- package/tsconfig.tsbuildinfo +187 -65
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
var __extends = (this && this.__extends) || (function () {
|
|
2
|
+
var extendStatics = function (d, b) {
|
|
3
|
+
extendStatics = Object.setPrototypeOf ||
|
|
4
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
+
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
6
|
+
return extendStatics(d, b);
|
|
7
|
+
};
|
|
8
|
+
return function (d, b) {
|
|
9
|
+
extendStatics(d, b);
|
|
10
|
+
function __() { this.constructor = d; }
|
|
11
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
12
|
+
};
|
|
13
|
+
})();
|
|
14
|
+
// Internal Imports
|
|
15
|
+
import { Component } from '../component';
|
|
16
|
+
import * as Configuration from '../../configuration';
|
|
17
|
+
import { Events, RenderTypes, DividerStatus } from '../../interfaces';
|
|
18
|
+
import { Tools } from '../../tools';
|
|
19
|
+
import { DOMUtils } from '../../services';
|
|
20
|
+
import { get } from 'lodash-es';
|
|
21
|
+
// D3 Imports
|
|
22
|
+
import { min } from 'd3-array';
|
|
23
|
+
import { select } from 'd3-selection';
|
|
24
|
+
var Heatmap = /** @class */ (function (_super) {
|
|
25
|
+
__extends(Heatmap, _super);
|
|
26
|
+
function Heatmap() {
|
|
27
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
28
|
+
_this.type = 'heatmap';
|
|
29
|
+
_this.renderType = RenderTypes.SVG;
|
|
30
|
+
_this.matrix = {};
|
|
31
|
+
_this.xBandwidth = 0;
|
|
32
|
+
_this.yBandwidth = 0;
|
|
33
|
+
_this.translationUnits = {
|
|
34
|
+
x: 0,
|
|
35
|
+
y: 0,
|
|
36
|
+
};
|
|
37
|
+
// Highlight elements that match the hovered axis item
|
|
38
|
+
_this.handleAxisOnHover = function (event) {
|
|
39
|
+
var detail = event.detail;
|
|
40
|
+
var datum = detail.datum;
|
|
41
|
+
// Unique ranges and domains
|
|
42
|
+
var ranges = _this.model.getUniqueRanges();
|
|
43
|
+
var domains = _this.model.getUniqueDomain();
|
|
44
|
+
// Labels
|
|
45
|
+
var domainLabel = _this.services.cartesianScales.getDomainLabel();
|
|
46
|
+
var rangeLabel = _this.services.cartesianScales.getRangeLabel();
|
|
47
|
+
// Scales
|
|
48
|
+
var mainXScale = _this.services.cartesianScales.getMainXScale();
|
|
49
|
+
var mainYScale = _this.services.cartesianScales.getMainYScale();
|
|
50
|
+
var label = '', sum = 0, minimum = 0, maximum = 0;
|
|
51
|
+
// Check to see where datum belongs
|
|
52
|
+
if (_this.matrix[datum] !== undefined) {
|
|
53
|
+
label = domainLabel;
|
|
54
|
+
// Iterate through Object and get sum, min, and max
|
|
55
|
+
ranges.forEach(function (element) {
|
|
56
|
+
var value = _this.matrix[datum][element].value || 0;
|
|
57
|
+
sum += value;
|
|
58
|
+
minimum = value < minimum ? value : minimum;
|
|
59
|
+
maximum = value > maximum ? value : maximum;
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
label = rangeLabel;
|
|
64
|
+
domains.forEach(function (element) {
|
|
65
|
+
var value = _this.matrix[element][datum].value || 0;
|
|
66
|
+
sum += value;
|
|
67
|
+
minimum = value < minimum ? value : minimum;
|
|
68
|
+
maximum = value > maximum ? value : maximum;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
if (mainXScale(datum) !== undefined) {
|
|
72
|
+
_this.parent
|
|
73
|
+
.select('g.multi-cell.column-highlight')
|
|
74
|
+
.classed('highlighter-hidden', false)
|
|
75
|
+
.attr('transform', "translate(" + mainXScale(datum) + ", " + min(mainYScale.range()) + ")");
|
|
76
|
+
}
|
|
77
|
+
else if (mainYScale(datum) !== undefined) {
|
|
78
|
+
_this.parent
|
|
79
|
+
.select('g.multi-cell.row-highlight')
|
|
80
|
+
.classed('highlighter-hidden', false)
|
|
81
|
+
.attr('transform', "translate(" + min(mainXScale.range()) + "," + mainYScale(datum) + ")");
|
|
82
|
+
}
|
|
83
|
+
// Dispatch tooltip show event
|
|
84
|
+
_this.services.events.dispatchEvent(Events.Tooltip.SHOW, {
|
|
85
|
+
event: detail.event,
|
|
86
|
+
hoveredElement: select(event.detail.element),
|
|
87
|
+
items: [
|
|
88
|
+
{
|
|
89
|
+
label: label,
|
|
90
|
+
value: datum,
|
|
91
|
+
bold: true,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
label: 'Min',
|
|
95
|
+
value: minimum,
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
label: 'Max',
|
|
99
|
+
value: maximum,
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
label: 'Average',
|
|
103
|
+
value: sum / domains.length,
|
|
104
|
+
},
|
|
105
|
+
],
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
// Un-highlight all elements
|
|
109
|
+
_this.handleAxisMouseOut = function (event) {
|
|
110
|
+
// Hide column/row
|
|
111
|
+
_this.parent
|
|
112
|
+
.selectAll('g.multi-cell')
|
|
113
|
+
.classed('highlighter-hidden', true);
|
|
114
|
+
// Dispatch hide tooltip event
|
|
115
|
+
_this.services.events.dispatchEvent(Events.Tooltip.HIDE, {
|
|
116
|
+
event: event,
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
return _this;
|
|
120
|
+
}
|
|
121
|
+
Heatmap.prototype.init = function () {
|
|
122
|
+
var eventsFragment = this.services.events;
|
|
123
|
+
// Highlight correct cells on Axis item hovers
|
|
124
|
+
eventsFragment.addEventListener(Events.Axis.LABEL_MOUSEOVER, this.handleAxisOnHover);
|
|
125
|
+
// Highlight correct cells on Axis item mouseouts
|
|
126
|
+
eventsFragment.addEventListener(Events.Axis.LABEL_MOUSEOUT, this.handleAxisMouseOut);
|
|
127
|
+
// Highlight correct cells on Axis item focus
|
|
128
|
+
eventsFragment.addEventListener(Events.Axis.LABEL_FOCUS, this.handleAxisOnHover);
|
|
129
|
+
// Highlight correct cells on Axis item blur
|
|
130
|
+
eventsFragment.addEventListener(Events.Axis.LABEL_BLUR, this.handleAxisMouseOut);
|
|
131
|
+
};
|
|
132
|
+
Heatmap.prototype.render = function (animate) {
|
|
133
|
+
var _this = this;
|
|
134
|
+
if (animate === void 0) { animate = true; }
|
|
135
|
+
var svg = this.getComponentContainer({ withinChartClip: true });
|
|
136
|
+
// Lower the chart so the axes are always visible
|
|
137
|
+
svg.lower();
|
|
138
|
+
var cartesianScales = this.services.cartesianScales;
|
|
139
|
+
this.matrix = this.model.getMatrix();
|
|
140
|
+
svg.html('');
|
|
141
|
+
if (Tools.getProperty(this.getOptions(), 'data', 'loading')) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
// determine x and y axis scale
|
|
145
|
+
var mainXScale = cartesianScales.getMainXScale();
|
|
146
|
+
var mainYScale = cartesianScales.getMainYScale();
|
|
147
|
+
var domainIdentifier = cartesianScales.getDomainIdentifier();
|
|
148
|
+
var rangeIdentifier = cartesianScales.getRangeIdentifier();
|
|
149
|
+
// Get unique axis values & create a matrix
|
|
150
|
+
var uniqueDomain = this.model.getUniqueDomain();
|
|
151
|
+
var uniqueRange = this.model.getUniqueRanges();
|
|
152
|
+
// Get matrix in the form of an array to create a single heatmap group
|
|
153
|
+
var matrixArray = this.model.getMatrixAsArray();
|
|
154
|
+
// Get available chart area
|
|
155
|
+
var xRange = mainXScale.range();
|
|
156
|
+
var yRange = mainYScale.range();
|
|
157
|
+
// Determine rectangle dimensions based on the number of unique domain and range
|
|
158
|
+
this.xBandwidth = Math.abs((xRange[1] - xRange[0]) / uniqueDomain.length);
|
|
159
|
+
this.yBandwidth = Math.abs((yRange[1] - yRange[0]) / uniqueRange.length);
|
|
160
|
+
var patternID = this.services.domUtils.generateElementIDString("heatmap-pattern-stripes");
|
|
161
|
+
// Create a striped pattern for missing data
|
|
162
|
+
svg.append('defs')
|
|
163
|
+
.append('pattern')
|
|
164
|
+
.attr('id', patternID)
|
|
165
|
+
.attr('width', 3)
|
|
166
|
+
.attr('height', 3)
|
|
167
|
+
.attr('patternUnits', 'userSpaceOnUse')
|
|
168
|
+
.attr('patternTransform', 'rotate(45)')
|
|
169
|
+
.append('rect')
|
|
170
|
+
.classed('pattern-fill', true)
|
|
171
|
+
.attr('width', 0.5)
|
|
172
|
+
.attr('height', 8);
|
|
173
|
+
var rectangles = svg
|
|
174
|
+
.selectAll()
|
|
175
|
+
.data(matrixArray)
|
|
176
|
+
.enter()
|
|
177
|
+
.append('g')
|
|
178
|
+
.attr('class', function (d) { return "heat-" + d.index; })
|
|
179
|
+
.classed('cell', true)
|
|
180
|
+
.attr('transform', function (d) {
|
|
181
|
+
return "translate(" + mainXScale(d[domainIdentifier]) + ", " + mainYScale(d[rangeIdentifier]) + ")";
|
|
182
|
+
})
|
|
183
|
+
.append('rect')
|
|
184
|
+
.attr('class', function (d) {
|
|
185
|
+
return _this.model.getColorClassName({
|
|
186
|
+
value: d.value,
|
|
187
|
+
originalClassName: "heat-" + d.index,
|
|
188
|
+
});
|
|
189
|
+
})
|
|
190
|
+
.classed('heat', true)
|
|
191
|
+
.classed('null-state', function (d) {
|
|
192
|
+
return d.index === -1 || d.value === null ? true : false;
|
|
193
|
+
})
|
|
194
|
+
.attr('width', this.xBandwidth)
|
|
195
|
+
.attr('height', this.yBandwidth)
|
|
196
|
+
.style('fill', function (d) {
|
|
197
|
+
// Check if a valid value exists
|
|
198
|
+
if (d.index === -1 || d.value === null) {
|
|
199
|
+
return "url(#" + patternID + ")";
|
|
200
|
+
}
|
|
201
|
+
return _this.model.getFillColor(Number(d.value));
|
|
202
|
+
})
|
|
203
|
+
.attr('aria-label', function (d) { return d.value; });
|
|
204
|
+
// Cell highlight box
|
|
205
|
+
this.createOuterBox('g.cell-highlight', this.xBandwidth, this.yBandwidth);
|
|
206
|
+
// Column highlight box
|
|
207
|
+
this.createOuterBox('g.multi-cell.column-highlight', this.xBandwidth, Math.abs(yRange[1] - yRange[0]));
|
|
208
|
+
// Row highlight box
|
|
209
|
+
this.createOuterBox('g.multi-cell.row-highlight', Math.abs(xRange[1] - xRange[0]), this.yBandwidth);
|
|
210
|
+
if (this.determineDividerStatus()) {
|
|
211
|
+
rectangles.style('stroke-width', '1px');
|
|
212
|
+
this.parent.select('g.cell-highlight').classed('cell-2', true);
|
|
213
|
+
}
|
|
214
|
+
this.addEventListener();
|
|
215
|
+
};
|
|
216
|
+
/**
|
|
217
|
+
* Generates a box using lines to create a hover effect
|
|
218
|
+
* The lines have drop shadow in their respective direction
|
|
219
|
+
* @param parentTag - tag name
|
|
220
|
+
* @param xBandwidth - X length
|
|
221
|
+
* @param yBandwidth - y length
|
|
222
|
+
*/
|
|
223
|
+
Heatmap.prototype.createOuterBox = function (parentTag, xBandwidth, yBandwidth) {
|
|
224
|
+
// Create a highlighter in the parent component so the shadow and the lines do not get clipped
|
|
225
|
+
var highlight = DOMUtils.appendOrSelect(this.parent, parentTag)
|
|
226
|
+
.classed('shadows', true)
|
|
227
|
+
.classed('highlighter-hidden', true);
|
|
228
|
+
DOMUtils.appendOrSelect(highlight, 'line.top')
|
|
229
|
+
.attr('x1', -1)
|
|
230
|
+
.attr('x2', xBandwidth + 1);
|
|
231
|
+
DOMUtils.appendOrSelect(highlight, 'line.left')
|
|
232
|
+
.attr('x1', 0)
|
|
233
|
+
.attr('y1', -1)
|
|
234
|
+
.attr('x2', 0)
|
|
235
|
+
.attr('y2', yBandwidth + 1);
|
|
236
|
+
DOMUtils.appendOrSelect(highlight, 'line.down')
|
|
237
|
+
.attr('x1', -1)
|
|
238
|
+
.attr('x2', xBandwidth + 1)
|
|
239
|
+
.attr('y1', yBandwidth)
|
|
240
|
+
.attr('y2', yBandwidth);
|
|
241
|
+
DOMUtils.appendOrSelect(highlight, 'line.right')
|
|
242
|
+
.attr('x1', xBandwidth)
|
|
243
|
+
.attr('x2', xBandwidth)
|
|
244
|
+
.attr('y1', -1)
|
|
245
|
+
.attr('y2', yBandwidth + 1);
|
|
246
|
+
};
|
|
247
|
+
Heatmap.prototype.determineDividerStatus = function () {
|
|
248
|
+
// Add dividers if status is not off, will assume auto or on by default.
|
|
249
|
+
var dividerStatus = Tools.getProperty(this.getOptions(), 'heatmap', 'divider', 'state');
|
|
250
|
+
// Determine if cell divider should be displayed
|
|
251
|
+
if (dividerStatus !== DividerStatus.OFF) {
|
|
252
|
+
if ((dividerStatus === DividerStatus.AUTO &&
|
|
253
|
+
Configuration.heatmap.minCellDividerDimension <=
|
|
254
|
+
this.xBandwidth &&
|
|
255
|
+
Configuration.heatmap.minCellDividerDimension <=
|
|
256
|
+
this.yBandwidth) ||
|
|
257
|
+
dividerStatus === DividerStatus.ON) {
|
|
258
|
+
return true;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
return false;
|
|
262
|
+
};
|
|
263
|
+
Heatmap.prototype.addEventListener = function () {
|
|
264
|
+
var self = this;
|
|
265
|
+
var cartesianScales = this.services.cartesianScales;
|
|
266
|
+
var options = this.getOptions();
|
|
267
|
+
var totalLabel = get(options, 'tooltip.totalLabel');
|
|
268
|
+
var domainIdentifier = cartesianScales.getDomainIdentifier();
|
|
269
|
+
var rangeIdentifier = cartesianScales.getRangeIdentifier();
|
|
270
|
+
var domainLabel = cartesianScales.getDomainLabel();
|
|
271
|
+
var rangeLabel = cartesianScales.getRangeLabel();
|
|
272
|
+
this.parent
|
|
273
|
+
.selectAll('g.cell')
|
|
274
|
+
.on('mouseover', function (event, datum) {
|
|
275
|
+
var cell = select(this);
|
|
276
|
+
var hoveredElement = cell.select('rect.heat');
|
|
277
|
+
var nullState = hoveredElement.classed('null-state');
|
|
278
|
+
// Dispatch event and tooltip only if value exists
|
|
279
|
+
if (!nullState) {
|
|
280
|
+
// Get transformation value of node
|
|
281
|
+
var transform = Tools.getTranformOffsets(cell.attr('transform'));
|
|
282
|
+
select('g.cell-highlight')
|
|
283
|
+
.attr('transform', "translate(" + (transform.x + self.translationUnits.x) + ", " + (transform.y + self.translationUnits.y) + ")")
|
|
284
|
+
.classed('highlighter-hidden', false);
|
|
285
|
+
// Dispatch mouse over event
|
|
286
|
+
self.services.events.dispatchEvent(Events.Heatmap.HEATMAP_MOUSEOVER, {
|
|
287
|
+
event: event,
|
|
288
|
+
element: hoveredElement,
|
|
289
|
+
datum: datum,
|
|
290
|
+
});
|
|
291
|
+
// Dispatch tooltip show event
|
|
292
|
+
self.services.events.dispatchEvent(Events.Tooltip.SHOW, {
|
|
293
|
+
event: event,
|
|
294
|
+
items: [
|
|
295
|
+
{
|
|
296
|
+
label: domainLabel,
|
|
297
|
+
value: datum[domainIdentifier],
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
label: rangeLabel,
|
|
301
|
+
value: datum[rangeIdentifier],
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
label: totalLabel || 'Total',
|
|
305
|
+
value: datum['value'],
|
|
306
|
+
color: hoveredElement.style('fill'),
|
|
307
|
+
},
|
|
308
|
+
],
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
})
|
|
312
|
+
.on('mousemove', function (event, datum) {
|
|
313
|
+
// Dispatch mouse move event
|
|
314
|
+
self.services.events.dispatchEvent(Events.Heatmap.HEATMAP_MOUSEMOVE, {
|
|
315
|
+
event: event,
|
|
316
|
+
element: select(this),
|
|
317
|
+
datum: datum,
|
|
318
|
+
});
|
|
319
|
+
// Dispatch tooltip move event
|
|
320
|
+
self.services.events.dispatchEvent(Events.Tooltip.MOVE, {
|
|
321
|
+
event: event,
|
|
322
|
+
});
|
|
323
|
+
})
|
|
324
|
+
.on('click', function (event, datum) {
|
|
325
|
+
// Dispatch mouse click event
|
|
326
|
+
self.services.events.dispatchEvent(Events.Heatmap.HEATMAP_CLICK, {
|
|
327
|
+
event: event,
|
|
328
|
+
element: select(this),
|
|
329
|
+
datum: datum,
|
|
330
|
+
});
|
|
331
|
+
})
|
|
332
|
+
.on('mouseout', function (event, datum) {
|
|
333
|
+
var cell = select(this);
|
|
334
|
+
var hoveredElement = cell.select('rect.heat');
|
|
335
|
+
var nullState = hoveredElement.classed('null-state');
|
|
336
|
+
select('g.cell-highlight').classed('highlighter-hidden', true);
|
|
337
|
+
// Dispatch event and tooltip only if value exists
|
|
338
|
+
if (!nullState) {
|
|
339
|
+
// Dispatch mouse out event
|
|
340
|
+
self.services.events.dispatchEvent(Events.Heatmap.HEATMAP_MOUSEOUT, {
|
|
341
|
+
event: event,
|
|
342
|
+
element: hoveredElement,
|
|
343
|
+
datum: datum,
|
|
344
|
+
});
|
|
345
|
+
// Dispatch hide tooltip event
|
|
346
|
+
self.services.events.dispatchEvent(Events.Tooltip.HIDE, {
|
|
347
|
+
event: event,
|
|
348
|
+
hoveredElement: hoveredElement,
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
});
|
|
352
|
+
};
|
|
353
|
+
// Remove event listeners
|
|
354
|
+
Heatmap.prototype.destroy = function () {
|
|
355
|
+
this.parent
|
|
356
|
+
.selectAll('rect.heat')
|
|
357
|
+
.on('mouseover', null)
|
|
358
|
+
.on('mousemove', null)
|
|
359
|
+
.on('click', null)
|
|
360
|
+
.on('mouseout', null);
|
|
361
|
+
// Remove legend listeners
|
|
362
|
+
var eventsFragment = this.services.events;
|
|
363
|
+
eventsFragment.removeEventListener(Events.Legend.ITEM_HOVER, this.handleAxisOnHover);
|
|
364
|
+
eventsFragment.removeEventListener(Events.Legend.ITEM_MOUSEOUT, this.handleAxisMouseOut);
|
|
365
|
+
};
|
|
366
|
+
return Heatmap;
|
|
367
|
+
}(Component));
|
|
368
|
+
export { Heatmap };
|
|
369
|
+
//# sourceMappingURL=../../../src/components/graphs/heatmap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heatmap.js","sourceRoot":"","sources":["heatmap.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { Component } from '../component';\nimport * as Configuration from '../../configuration';\nimport { Events, RenderTypes, DividerStatus } from '../../interfaces';\nimport { Tools } from '../../tools';\nimport { DOMUtils } from '../../services';\n\nimport { get } from 'lodash-es';\n\n// D3 Imports\nimport { min } from 'd3-array';\nimport { select } from 'd3-selection';\n\nexport class Heatmap extends Component {\n\ttype = 'heatmap';\n\trenderType = RenderTypes.SVG;\n\n\tprivate matrix = {};\n\tprivate xBandwidth = 0;\n\tprivate yBandwidth = 0;\n\tprivate translationUnits = {\n\t\tx: 0,\n\t\ty: 0,\n\t};\n\n\tinit() {\n\t\tconst eventsFragment = this.services.events;\n\n\t\t// Highlight correct cells on Axis item hovers\n\t\teventsFragment.addEventListener(\n\t\t\tEvents.Axis.LABEL_MOUSEOVER,\n\t\t\tthis.handleAxisOnHover\n\t\t);\n\n\t\t// Highlight correct cells on Axis item mouseouts\n\t\teventsFragment.addEventListener(\n\t\t\tEvents.Axis.LABEL_MOUSEOUT,\n\t\t\tthis.handleAxisMouseOut\n\t\t);\n\n\t\t// Highlight correct cells on Axis item focus\n\t\teventsFragment.addEventListener(\n\t\t\tEvents.Axis.LABEL_FOCUS,\n\t\t\tthis.handleAxisOnHover\n\t\t);\n\n\t\t// Highlight correct cells on Axis item blur\n\t\teventsFragment.addEventListener(\n\t\t\tEvents.Axis.LABEL_BLUR,\n\t\t\tthis.handleAxisMouseOut\n\t\t);\n\t}\n\n\trender(animate = true) {\n\t\tconst svg = this.getComponentContainer({ withinChartClip: true });\n\t\t// Lower the chart so the axes are always visible\n\t\tsvg.lower();\n\n\t\tconst { cartesianScales } = this.services;\n\t\tthis.matrix = this.model.getMatrix();\n\n\t\tsvg.html('');\n\n\t\tif (Tools.getProperty(this.getOptions(), 'data', 'loading')) {\n\t\t\treturn;\n\t\t}\n\n\t\t// determine x and y axis scale\n\t\tconst mainXScale = cartesianScales.getMainXScale();\n\t\tconst mainYScale = cartesianScales.getMainYScale();\n\t\tconst domainIdentifier = cartesianScales.getDomainIdentifier();\n\t\tconst rangeIdentifier = cartesianScales.getRangeIdentifier();\n\n\t\t// Get unique axis values & create a matrix\n\t\tconst uniqueDomain = this.model.getUniqueDomain();\n\t\tconst uniqueRange = this.model.getUniqueRanges();\n\n\t\t// Get matrix in the form of an array to create a single heatmap group\n\t\tconst matrixArray = this.model.getMatrixAsArray();\n\n\t\t// Get available chart area\n\t\tconst xRange = mainXScale.range();\n\t\tconst yRange = mainYScale.range();\n\n\t\t// Determine rectangle dimensions based on the number of unique domain and range\n\t\tthis.xBandwidth = Math.abs(\n\t\t\t(xRange[1] - xRange[0]) / uniqueDomain.length\n\t\t);\n\t\tthis.yBandwidth = Math.abs(\n\t\t\t(yRange[1] - yRange[0]) / uniqueRange.length\n\t\t);\n\n\t\tconst patternID = this.services.domUtils.generateElementIDString(\n\t\t\t`heatmap-pattern-stripes`\n\t\t);\n\n\t\t// Create a striped pattern for missing data\n\t\tsvg.append('defs')\n\t\t\t.append('pattern')\n\t\t\t.attr('id', patternID)\n\t\t\t.attr('width', 3)\n\t\t\t.attr('height', 3)\n\t\t\t.attr('patternUnits', 'userSpaceOnUse')\n\t\t\t.attr('patternTransform', 'rotate(45)')\n\t\t\t.append('rect')\n\t\t\t.classed('pattern-fill', true)\n\t\t\t.attr('width', 0.5)\n\t\t\t.attr('height', 8);\n\n\t\tconst rectangles = svg\n\t\t\t.selectAll()\n\t\t\t.data(matrixArray)\n\t\t\t.enter()\n\t\t\t.append('g')\n\t\t\t.attr('class', (d) => `heat-${d.index}`)\n\t\t\t.classed('cell', true)\n\t\t\t.attr(\n\t\t\t\t'transform',\n\t\t\t\t(d) =>\n\t\t\t\t\t`translate(${mainXScale(d[domainIdentifier])}, ${mainYScale(\n\t\t\t\t\t\td[rangeIdentifier]\n\t\t\t\t\t)})`\n\t\t\t)\n\t\t\t.append('rect')\n\t\t\t.attr('class', (d) => {\n\t\t\t\treturn this.model.getColorClassName({\n\t\t\t\t\tvalue: d.value,\n\t\t\t\t\toriginalClassName: `heat-${d.index}`,\n\t\t\t\t});\n\t\t\t})\n\t\t\t.classed('heat', true)\n\t\t\t.classed('null-state', (d) =>\n\t\t\t\td.index === -1 || d.value === null ? true : false\n\t\t\t)\n\t\t\t.attr('width', this.xBandwidth)\n\t\t\t.attr('height', this.yBandwidth)\n\t\t\t.style('fill', (d) => {\n\t\t\t\t// Check if a valid value exists\n\t\t\t\tif (d.index === -1 || d.value === null) {\n\t\t\t\t\treturn `url(#${patternID})`;\n\t\t\t\t}\n\t\t\t\treturn this.model.getFillColor(Number(d.value));\n\t\t\t})\n\t\t\t.attr('aria-label', (d) => d.value);\n\n\t\t// Cell highlight box\n\t\tthis.createOuterBox(\n\t\t\t'g.cell-highlight',\n\t\t\tthis.xBandwidth,\n\t\t\tthis.yBandwidth\n\t\t);\n\t\t// Column highlight box\n\t\tthis.createOuterBox(\n\t\t\t'g.multi-cell.column-highlight',\n\t\t\tthis.xBandwidth,\n\t\t\tMath.abs(yRange[1] - yRange[0])\n\t\t);\n\t\t// Row highlight box\n\t\tthis.createOuterBox(\n\t\t\t'g.multi-cell.row-highlight',\n\t\t\tMath.abs(xRange[1] - xRange[0]),\n\t\t\tthis.yBandwidth\n\t\t);\n\n\t\tif (this.determineDividerStatus()) {\n\t\t\trectangles.style('stroke-width', '1px');\n\t\t\tthis.parent.select('g.cell-highlight').classed('cell-2', true);\n\t\t}\n\n\t\tthis.addEventListener();\n\t}\n\n\t/**\n\t * Generates a box using lines to create a hover effect\n\t * The lines have drop shadow in their respective direction\n\t * @param parentTag - tag name\n\t * @param xBandwidth - X length\n\t * @param yBandwidth - y length\n\t */\n\tprivate createOuterBox(parentTag, xBandwidth, yBandwidth) {\n\t\t// Create a highlighter in the parent component so the shadow and the lines do not get clipped\n\t\tconst highlight = DOMUtils.appendOrSelect(this.parent, parentTag)\n\t\t\t.classed('shadows', true)\n\t\t\t.classed('highlighter-hidden', true);\n\n\t\tDOMUtils.appendOrSelect(highlight, 'line.top')\n\t\t\t.attr('x1', -1)\n\t\t\t.attr('x2', xBandwidth + 1);\n\n\t\tDOMUtils.appendOrSelect(highlight, 'line.left')\n\t\t\t.attr('x1', 0)\n\t\t\t.attr('y1', -1)\n\t\t\t.attr('x2', 0)\n\t\t\t.attr('y2', yBandwidth + 1);\n\n\t\tDOMUtils.appendOrSelect(highlight, 'line.down')\n\t\t\t.attr('x1', -1)\n\t\t\t.attr('x2', xBandwidth + 1)\n\t\t\t.attr('y1', yBandwidth)\n\t\t\t.attr('y2', yBandwidth);\n\n\t\tDOMUtils.appendOrSelect(highlight, 'line.right')\n\t\t\t.attr('x1', xBandwidth)\n\t\t\t.attr('x2', xBandwidth)\n\t\t\t.attr('y1', -1)\n\t\t\t.attr('y2', yBandwidth + 1);\n\t}\n\n\tprivate determineDividerStatus(): boolean {\n\t\t// Add dividers if status is not off, will assume auto or on by default.\n\t\tconst dividerStatus = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'heatmap',\n\t\t\t'divider',\n\t\t\t'state'\n\t\t);\n\n\t\t// Determine if cell divider should be displayed\n\t\tif (dividerStatus !== DividerStatus.OFF) {\n\t\t\tif (\n\t\t\t\t(dividerStatus === DividerStatus.AUTO &&\n\t\t\t\t\tConfiguration.heatmap.minCellDividerDimension <=\n\t\t\t\t\t\tthis.xBandwidth &&\n\t\t\t\t\tConfiguration.heatmap.minCellDividerDimension <=\n\t\t\t\t\t\tthis.yBandwidth) ||\n\t\t\t\tdividerStatus === DividerStatus.ON\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\taddEventListener() {\n\t\tconst self = this;\n\t\tconst { cartesianScales } = this.services;\n\t\tconst options = this.getOptions();\n\t\tconst totalLabel = get(options, 'tooltip.totalLabel');\n\n\t\tconst domainIdentifier = cartesianScales.getDomainIdentifier();\n\t\tconst rangeIdentifier = cartesianScales.getRangeIdentifier();\n\n\t\tconst domainLabel = cartesianScales.getDomainLabel();\n\t\tconst rangeLabel = cartesianScales.getRangeLabel();\n\n\t\tthis.parent\n\t\t\t.selectAll('g.cell')\n\t\t\t.on('mouseover', function (event, datum) {\n\t\t\t\tconst cell = select(this);\n\t\t\t\tconst hoveredElement = cell.select('rect.heat');\n\t\t\t\tconst nullState = hoveredElement.classed('null-state');\n\n\t\t\t\t// Dispatch event and tooltip only if value exists\n\t\t\t\tif (!nullState) {\n\t\t\t\t\t// Get transformation value of node\n\t\t\t\t\tconst transform = Tools.getTranformOffsets(\n\t\t\t\t\t\tcell.attr('transform')\n\t\t\t\t\t);\n\n\t\t\t\t\tselect('g.cell-highlight')\n\t\t\t\t\t\t.attr(\n\t\t\t\t\t\t\t'transform',\n\t\t\t\t\t\t\t`translate(${\n\t\t\t\t\t\t\t\ttransform.x + self.translationUnits.x\n\t\t\t\t\t\t\t}, ${transform.y + self.translationUnits.y})`\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.classed('highlighter-hidden', false);\n\n\t\t\t\t\t// Dispatch mouse over event\n\t\t\t\t\tself.services.events.dispatchEvent(\n\t\t\t\t\t\tEvents.Heatmap.HEATMAP_MOUSEOVER,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\telement: hoveredElement,\n\t\t\t\t\t\t\tdatum: datum,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\n\t\t\t\t\t// Dispatch tooltip show event\n\t\t\t\t\tself.services.events.dispatchEvent(Events.Tooltip.SHOW, {\n\t\t\t\t\t\tevent,\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: domainLabel,\n\t\t\t\t\t\t\t\tvalue: datum[domainIdentifier],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: rangeLabel,\n\t\t\t\t\t\t\t\tvalue: datum[rangeIdentifier],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: totalLabel || 'Total',\n\t\t\t\t\t\t\t\tvalue: datum['value'],\n\t\t\t\t\t\t\t\tcolor: hoveredElement.style('fill'),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t})\n\t\t\t.on('mousemove', function (event, datum) {\n\t\t\t\t// Dispatch mouse move event\n\t\t\t\tself.services.events.dispatchEvent(\n\t\t\t\t\tEvents.Heatmap.HEATMAP_MOUSEMOVE,\n\t\t\t\t\t{\n\t\t\t\t\t\tevent,\n\t\t\t\t\t\telement: select(this),\n\t\t\t\t\t\tdatum: datum,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\t// Dispatch tooltip move event\n\t\t\t\tself.services.events.dispatchEvent(Events.Tooltip.MOVE, {\n\t\t\t\t\tevent,\n\t\t\t\t});\n\t\t\t})\n\t\t\t.on('click', function (event, datum) {\n\t\t\t\t// Dispatch mouse click event\n\t\t\t\tself.services.events.dispatchEvent(\n\t\t\t\t\tEvents.Heatmap.HEATMAP_CLICK,\n\t\t\t\t\t{\n\t\t\t\t\t\tevent,\n\t\t\t\t\t\telement: select(this),\n\t\t\t\t\t\tdatum: datum,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t})\n\t\t\t.on('mouseout', function (event, datum) {\n\t\t\t\tconst cell = select(this);\n\t\t\t\tconst hoveredElement = cell.select('rect.heat');\n\t\t\t\tconst nullState = hoveredElement.classed('null-state');\n\n\t\t\t\tselect('g.cell-highlight').classed('highlighter-hidden', true);\n\n\t\t\t\t// Dispatch event and tooltip only if value exists\n\t\t\t\tif (!nullState) {\n\t\t\t\t\t// Dispatch mouse out event\n\t\t\t\t\tself.services.events.dispatchEvent(\n\t\t\t\t\t\tEvents.Heatmap.HEATMAP_MOUSEOUT,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\telement: hoveredElement,\n\t\t\t\t\t\t\tdatum: datum,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\n\t\t\t\t\t// Dispatch hide tooltip event\n\t\t\t\t\tself.services.events.dispatchEvent(Events.Tooltip.HIDE, {\n\t\t\t\t\t\tevent,\n\t\t\t\t\t\thoveredElement,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t// Highlight elements that match the hovered axis item\n\thandleAxisOnHover = (event: CustomEvent) => {\n\t\tconst { detail } = event;\n\t\tconst { datum } = detail;\n\t\t// Unique ranges and domains\n\t\tconst ranges = this.model.getUniqueRanges();\n\t\tconst domains = this.model.getUniqueDomain();\n\t\t// Labels\n\t\tconst domainLabel = this.services.cartesianScales.getDomainLabel();\n\t\tconst rangeLabel = this.services.cartesianScales.getRangeLabel();\n\t\t// Scales\n\t\tconst mainXScale = this.services.cartesianScales.getMainXScale();\n\t\tconst mainYScale = this.services.cartesianScales.getMainYScale();\n\n\t\tlet label = '',\n\t\t\tsum = 0,\n\t\t\tminimum = 0,\n\t\t\tmaximum = 0;\n\n\t\t// Check to see where datum belongs\n\t\tif (this.matrix[datum] !== undefined) {\n\t\t\tlabel = domainLabel;\n\t\t\t// Iterate through Object and get sum, min, and max\n\t\t\tranges.forEach((element) => {\n\t\t\t\tlet value = this.matrix[datum][element].value || 0;\n\t\t\t\tsum += value;\n\t\t\t\tminimum = value < minimum ? value : minimum;\n\t\t\t\tmaximum = value > maximum ? value : maximum;\n\t\t\t});\n\t\t} else {\n\t\t\tlabel = rangeLabel;\n\t\t\tdomains.forEach((element) => {\n\t\t\t\tlet value = this.matrix[element][datum].value || 0;\n\t\t\t\tsum += value;\n\t\t\t\tminimum = value < minimum ? value : minimum;\n\t\t\t\tmaximum = value > maximum ? value : maximum;\n\t\t\t});\n\t\t}\n\n\t\tif (mainXScale(datum) !== undefined) {\n\t\t\tthis.parent\n\t\t\t\t.select('g.multi-cell.column-highlight')\n\t\t\t\t.classed('highlighter-hidden', false)\n\t\t\t\t.attr(\n\t\t\t\t\t'transform',\n\t\t\t\t\t`translate(${mainXScale(datum)}, ${min(\n\t\t\t\t\t\tmainYScale.range()\n\t\t\t\t\t)})`\n\t\t\t\t);\n\t\t} else if (mainYScale(datum) !== undefined) {\n\t\t\tthis.parent\n\t\t\t\t.select('g.multi-cell.row-highlight')\n\t\t\t\t.classed('highlighter-hidden', false)\n\t\t\t\t.attr(\n\t\t\t\t\t'transform',\n\t\t\t\t\t`translate(${min(mainXScale.range())},${mainYScale(datum)})`\n\t\t\t\t);\n\t\t}\n\n\t\t// Dispatch tooltip show event\n\t\tthis.services.events.dispatchEvent(Events.Tooltip.SHOW, {\n\t\t\tevent: detail.event,\n\t\t\thoveredElement: select(event.detail.element),\n\t\t\titems: [\n\t\t\t\t{\n\t\t\t\t\tlabel: label,\n\t\t\t\t\tvalue: datum,\n\t\t\t\t\tbold: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: 'Min',\n\t\t\t\t\tvalue: minimum,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: 'Max',\n\t\t\t\t\tvalue: maximum,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: 'Average',\n\t\t\t\t\tvalue: sum / domains.length,\n\t\t\t\t},\n\t\t\t],\n\t\t});\n\t};\n\n\t// Un-highlight all elements\n\thandleAxisMouseOut = (event: CustomEvent) => {\n\t\t// Hide column/row\n\t\tthis.parent\n\t\t\t.selectAll('g.multi-cell')\n\t\t\t.classed('highlighter-hidden', true);\n\n\t\t// Dispatch hide tooltip event\n\t\tthis.services.events.dispatchEvent(Events.Tooltip.HIDE, {\n\t\t\tevent,\n\t\t});\n\t};\n\n\t// Remove event listeners\n\tdestroy() {\n\t\tthis.parent\n\t\t\t.selectAll('rect.heat')\n\t\t\t.on('mouseover', null)\n\t\t\t.on('mousemove', null)\n\t\t\t.on('click', null)\n\t\t\t.on('mouseout', null);\n\n\t\t// Remove legend listeners\n\t\tconst eventsFragment = this.services.events;\n\t\teventsFragment.removeEventListener(\n\t\t\tEvents.Legend.ITEM_HOVER,\n\t\t\tthis.handleAxisOnHover\n\t\t);\n\t\teventsFragment.removeEventListener(\n\t\t\tEvents.Legend.ITEM_MOUSEOUT,\n\t\t\tthis.handleAxisMouseOut\n\t\t);\n\t}\n}\n"]}
|
package/components/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './component';
|
|
2
2
|
export * from './essentials/legend';
|
|
3
|
+
export * from './essentials/color-scale-legend';
|
|
3
4
|
export * from './essentials/modal';
|
|
4
5
|
export * from './essentials/threshold';
|
|
5
6
|
export * from './essentials/title';
|
|
@@ -32,6 +33,7 @@ export * from './graphs/radar';
|
|
|
32
33
|
export * from './graphs/circle-pack';
|
|
33
34
|
export * from './graphs/wordcloud';
|
|
34
35
|
export * from './graphs/alluvial';
|
|
36
|
+
export * from './graphs/heatmap';
|
|
35
37
|
export * from './layout/spacer';
|
|
36
38
|
export * from './layout/layout';
|
|
37
39
|
export * from './axes/two-dimensional-axes';
|
package/components/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './component';
|
|
2
2
|
// ESSENTIALS
|
|
3
3
|
export * from './essentials/legend';
|
|
4
|
+
export * from './essentials/color-scale-legend';
|
|
4
5
|
export * from './essentials/modal';
|
|
5
6
|
export * from './essentials/threshold';
|
|
6
7
|
export * from './essentials/title';
|
|
@@ -34,6 +35,7 @@ export * from './graphs/radar';
|
|
|
34
35
|
export * from './graphs/circle-pack';
|
|
35
36
|
export * from './graphs/wordcloud';
|
|
36
37
|
export * from './graphs/alluvial';
|
|
38
|
+
export * from './graphs/heatmap';
|
|
37
39
|
// Layout
|
|
38
40
|
export * from './layout/spacer';
|
|
39
41
|
export * from './layout/layout';
|
package/components/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,aAAa;AACb,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AAExC,SAAS;AACT,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,aAAa;AACb,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AAExC,SAAS;AACT,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AAEjC,SAAS;AACT,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAEhC,OAAO;AACP,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAEhC,WAAW;AACX,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC","sourcesContent":["export * from './component';\n\n// ESSENTIALS\nexport * from './essentials/legend';\nexport * from './essentials/color-scale-legend';\nexport * from './essentials/modal';\nexport * from './essentials/threshold';\nexport * from './essentials/title';\nexport * from './essentials/title-meter';\nexport * from './essentials/tooltip';\nexport * from './essentials/tooltip-axis';\nexport * from './essentials/canvas-chart-clip';\nexport * from './essentials/highlights';\n\n// GRAPHS\nexport * from './graphs/area';\nexport * from './graphs/area-stacked';\nexport * from './graphs/bar-simple';\nexport * from './graphs/bar-grouped';\nexport * from './graphs/bar-stacked';\nexport * from './graphs/boxplot';\nexport * from './graphs/bubble';\nexport * from './graphs/bullet';\nexport * from './graphs/histogram';\nexport * from './graphs/line';\nexport * from './graphs/lollipop';\nexport * from './graphs/scatter';\nexport * from './graphs/scatter-stacked';\nexport * from './graphs/pie';\nexport * from './graphs/gauge';\nexport * from './graphs/donut';\nexport * from './graphs/skeleton';\nexport * from './graphs/skeleton-lines';\nexport * from './graphs/tree';\nexport * from './graphs/treemap';\nexport * from './graphs/radar';\nexport * from './graphs/circle-pack';\nexport * from './graphs/wordcloud';\nexport * from './graphs/alluvial';\nexport * from './graphs/heatmap';\n\n// Layout\nexport * from './layout/spacer';\nexport * from './layout/layout';\n\n// MISC\nexport * from './axes/two-dimensional-axes';\nexport * from './axes/axis';\nexport * from './axes/grid-brush';\nexport * from './axes/chart-clip';\nexport * from './axes/grid';\nexport * from './axes/ruler';\nexport * from './axes/ruler-binned';\nexport * from './axes/ruler-stacked';\nexport * from './axes/toolbar';\nexport * from './axes/zero-line';\nexport * from './axes/zoom-bar';\n\n// Diagrams\nexport * from './diagrams/buildPaths';\nexport * from './diagrams/markerDefinitions';\n"]}
|
|
@@ -18,6 +18,9 @@ export declare const axis: {
|
|
|
18
18
|
compareTo: string;
|
|
19
19
|
};
|
|
20
20
|
paddingRatio: number;
|
|
21
|
+
hover: {
|
|
22
|
+
rectanglePadding: number;
|
|
23
|
+
};
|
|
21
24
|
};
|
|
22
25
|
export declare const canvasZoomSettings: {
|
|
23
26
|
duration: number;
|
|
@@ -130,6 +133,11 @@ export declare const legend: {
|
|
|
130
133
|
}[];
|
|
131
134
|
color: string;
|
|
132
135
|
};
|
|
136
|
+
color: {
|
|
137
|
+
barWidth: number;
|
|
138
|
+
barHeight: number;
|
|
139
|
+
axisYTranslation: number;
|
|
140
|
+
};
|
|
133
141
|
};
|
|
134
142
|
export declare const lines: {
|
|
135
143
|
opacity: {
|
|
@@ -199,6 +207,10 @@ export declare const alluvial: {
|
|
|
199
207
|
selected: number;
|
|
200
208
|
};
|
|
201
209
|
};
|
|
210
|
+
export declare const heatmap: {
|
|
211
|
+
minCellDividerDimension: number;
|
|
212
|
+
chartPadding: number;
|
|
213
|
+
};
|
|
202
214
|
export declare const spacers: {
|
|
203
215
|
default: {
|
|
204
216
|
size: number;
|
|
@@ -19,6 +19,9 @@ export var axis = {
|
|
|
19
19
|
compareTo: 'marker',
|
|
20
20
|
},
|
|
21
21
|
paddingRatio: 0.1,
|
|
22
|
+
hover: {
|
|
23
|
+
rectanglePadding: 4,
|
|
24
|
+
},
|
|
22
25
|
};
|
|
23
26
|
export var canvasZoomSettings = {
|
|
24
27
|
duration: 1000,
|
|
@@ -123,6 +126,11 @@ export var legend = {
|
|
|
123
126
|
iconData: [{ x: 0, y: 0, width: 12, height: 12 }],
|
|
124
127
|
color: '#8D8D8D',
|
|
125
128
|
},
|
|
129
|
+
color: {
|
|
130
|
+
barWidth: 300,
|
|
131
|
+
barHeight: 8,
|
|
132
|
+
axisYTranslation: 10,
|
|
133
|
+
},
|
|
126
134
|
};
|
|
127
135
|
export var lines = {
|
|
128
136
|
opacity: {
|
|
@@ -192,6 +200,11 @@ export var alluvial = {
|
|
|
192
200
|
selected: 1,
|
|
193
201
|
},
|
|
194
202
|
};
|
|
203
|
+
export var heatmap = {
|
|
204
|
+
minCellDividerDimension: 16,
|
|
205
|
+
// Ensures axes lines are displayed with or without stroke disabled
|
|
206
|
+
chartPadding: 0.5,
|
|
207
|
+
};
|
|
195
208
|
export var spacers = {
|
|
196
209
|
default: {
|
|
197
210
|
size: 24,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-non-customizable.js","sourceRoot":"","sources":["configuration-non-customizable.ts"],"names":[],"mappings":"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","sourcesContent":["import { ZoomBarTypes, LegendItemType } from './interfaces';\nimport { easeCubicInOut } from 'd3-ease';\n\nexport const area = {\n\topacity: {\n\t\tunselected: 0.05,\n\t\tselected: 0.4,\n\t},\n};\n\nexport const axis = {\n\tticks: {\n\t\tnumber: 7,\n\t\trotateIfSmallerThan: 30,\n\t\tverticalSpaceRatio: 2.5,\n\t\thorizontalSpaceRatio: 3.5,\n\t},\n\tratio: {\n\t\treference: 'value',\n\t\tcompareTo: 'marker',\n\t},\n\tpaddingRatio: 0.1,\n};\n\nexport const canvasZoomSettings = {\n\tduration: 1000,\n\tease: easeCubicInOut,\n\tzoomLevel: 3,\n};\n\nexport const circlePack = {\n\tcircles: {\n\t\tfillOpacity: 0.3,\n\t\thover: {\n\t\t\tstroke: '#FFF',\n\t\t},\n\t},\n\tpadding: {\n\t\tmainGroup: 4,\n\t\tchildren: 2,\n\t},\n\thierarchyLevel: 2,\n};\n\nexport const color = {\n\tpairingOptions: {\n\t\t'1-color': 4,\n\t\t'2-color': 5,\n\t\t'3-color': 5,\n\t\t'4-color': 3,\n\t\t'5-color': 2,\n\t\t'14-color': 1,\n\t},\n};\n\nexport const boxplot = {\n\tcircle: {\n\t\tradius: 4,\n\t\topacity: {\n\t\t\thovered: 1,\n\t\t\tdefault: 0.3,\n\t\t},\n\t},\n\tbox: {\n\t\topacity: {\n\t\t\thovered: 0.5,\n\t\t\tdefault: 0.3,\n\t\t},\n\t},\n\tstrokeWidth: {\n\t\tdefault: 1,\n\t\tthicker: 2,\n\t},\n};\n\nexport const histogram = {\n\tdefaultBins: 10,\n};\n\nexport const legend = {\n\titems: {\n\t\tstatus: {\n\t\t\tACTIVE: 1,\n\t\t\tDISABLED: 0,\n\t\t},\n\t\thorizontalSpace: 12,\n\t\tverticalSpace: 24,\n\t\ttextYOffset: 8,\n\t\tspaceAfter: 4,\n\t},\n\tcheckbox: {\n\t\tradius: 6.5,\n\t},\n\tradius: {\n\t\ticonData: [\n\t\t\t{ cx: 7, cy: 7, r: 6.5 },\n\t\t\t{ cx: 7, cy: 10, r: 3.5 },\n\t\t],\n\t\tfill: null,\n\t\tstroke: '#8c8c8c',\n\t},\n\tline: {\n\t\tyPosition: 6,\n\t\twidth: 24,\n\t\tstrokeWidth: 1.4,\n\t\tfill: null,\n\t\tstroke: '#999999',\n\t},\n\tarea: {\n\t\twidth: 24,\n\t\theight: 14,\n\t\tfill: '#6f6f6f',\n\t\tstroke: null,\n\t},\n\tsize: {\n\t\ticonData: [\n\t\t\t{ width: 23, height: 12 },\n\t\t\t{ width: 13, height: 6 },\n\t\t],\n\t\tfill: null,\n\t\tstroke: '#8D8D8D',\n\t},\n\tquartile: {\n\t\ticonData: [\n\t\t\t{ x: 0, y: 0, width: 24, height: 13 },\n\t\t\t{ x: 11, y: 4, width: 1, height: 4 },\n\t\t],\n\t},\n\tzoom: {\n\t\ticonData: [{ x: 0, y: 0, width: 12, height: 12 }],\n\t\tcolor: '#8D8D8D',\n\t},\n};\n\nexport const lines = {\n\topacity: {\n\t\tunselected: 0.3,\n\t\tselected: 1,\n\t},\n\tweight: {\n\t\tselected: 2,\n\t\tunselected: 1,\n\t},\n};\n\nexport const meter = {\n\tstatusBar: {\n\t\tpaddingRight: 5,\n\t},\n\tstatus: {\n\t\tindicatorSize: 16,\n\t\tpaddingLeft: 15,\n\t},\n\ttotal: {\n\t\tpaddingLeft: 36,\n\t\tpaddingRight: 24,\n\t},\n\theight: {\n\t\tdefault: 8,\n\t\tproportional: 16,\n\t},\n\tdividerWidth: 2,\n};\n\nexport const pie = {\n\tradiusOffset: -15,\n\tinnerRadius: 2,\n\tpadAngle: 0.007,\n\thoverArc: {\n\t\touterRadiusOffset: 3,\n\t},\n\txOffset: 30,\n\tyOffset: 20,\n\tyOffsetCallout: 10,\n\tcallout: {\n\t\tminSliceDegree: 5,\n\t\toffsetX: 15,\n\t\toffsetY: 12,\n\t\thorizontalLineLength: 8,\n\t\ttextMargin: 2,\n\t},\n};\n\nexport const radar = {\n\topacity: {\n\t\tunselected: 0.1,\n\t\tselected: 0.3,\n\t},\n\txLabelPadding: 10,\n\tyLabelPadding: 8,\n\tyTicksNumber: 4,\n\tminRange: 10,\n\txAxisRectHeight: 50,\n\tdotsRadius: 5,\n};\n\nexport const alluvial = {\n\tnodeWidth: 4,\n\tnodeHoveredWidth: 8,\n\tminNodePadding: 24,\n\topacity: {\n\t\tunfocus: 0.3,\n\t\tdefault: 0.8,\n\t\tselected: 1,\n\t},\n};\n\nexport const spacers = {\n\tdefault: {\n\t\tsize: 24,\n\t},\n};\n\nexport const tooltips = {\n\thorizontalOffset: 10,\n};\n\n/**\n * Base transition configuration\n */\nexport const transitions = {\n\tdefault: {\n\t\tduration: 300,\n\t},\n\tpie_slice_mouseover: {\n\t\tduration: 100,\n\t},\n\tpie_chart_titles: {\n\t\tduration: 375,\n\t},\n\tgraph_element_mouseover_fill_update: {\n\t\tduration: 100,\n\t},\n\tgraph_element_mouseout_fill_update: {\n\t\tduration: 100,\n\t},\n};\n\nexport const toolbar = {\n\tbuttonSize: 32,\n\ticonSize: 20,\n\theight: 32,\n\tspacerHeight: 10,\n\ticonPadding: 6,\n};\n\nexport const zoomBar = {\n\theight: {\n\t\t[ZoomBarTypes.GRAPH_VIEW]: 32,\n\t\t[ZoomBarTypes.SLIDER_VIEW]: 10,\n\t},\n\tspacerHeight: 8,\n\thandleWidth: 5,\n\thandleBarWidth: 1,\n\thandleBarHeight: 12,\n};\n\nexport const defaultLegendAdditionalItems = [\n\t{\n\t\ttype: LegendItemType.RADIUS,\n\t\tname: 'Radius',\n\t},\n\t{\n\t\ttype: LegendItemType.AREA,\n\t\tname: 'Poor area',\n\t},\n\t{\n\t\ttype: LegendItemType.AREA,\n\t\tname: 'Satisfactory area',\n\t},\n\t{\n\t\ttype: LegendItemType.AREA,\n\t\tname: 'Great area',\n\t},\n\t{\n\t\ttype: LegendItemType.QUARTILE,\n\t\tname: 'Quartiles',\n\t},\n];\n"]}
|
|
1
|
+
{"version":3,"file":"configuration-non-customizable.js","sourceRoot":"","sources":["configuration-non-customizable.ts"],"names":[],"mappings":"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","sourcesContent":["import { ZoomBarTypes, LegendItemType } from './interfaces';\nimport { easeCubicInOut } from 'd3-ease';\n\nexport const area = {\n\topacity: {\n\t\tunselected: 0.05,\n\t\tselected: 0.4,\n\t},\n};\n\nexport const axis = {\n\tticks: {\n\t\tnumber: 7,\n\t\trotateIfSmallerThan: 30,\n\t\tverticalSpaceRatio: 2.5,\n\t\thorizontalSpaceRatio: 3.5,\n\t},\n\tratio: {\n\t\treference: 'value',\n\t\tcompareTo: 'marker',\n\t},\n\tpaddingRatio: 0.1,\n\thover: {\n\t\trectanglePadding: 4,\n\t},\n};\n\nexport const canvasZoomSettings = {\n\tduration: 1000,\n\tease: easeCubicInOut,\n\tzoomLevel: 3,\n};\n\nexport const circlePack = {\n\tcircles: {\n\t\tfillOpacity: 0.3,\n\t\thover: {\n\t\t\tstroke: '#FFF',\n\t\t},\n\t},\n\tpadding: {\n\t\tmainGroup: 4,\n\t\tchildren: 2,\n\t},\n\thierarchyLevel: 2,\n};\n\nexport const color = {\n\tpairingOptions: {\n\t\t'1-color': 4,\n\t\t'2-color': 5,\n\t\t'3-color': 5,\n\t\t'4-color': 3,\n\t\t'5-color': 2,\n\t\t'14-color': 1,\n\t},\n};\n\nexport const boxplot = {\n\tcircle: {\n\t\tradius: 4,\n\t\topacity: {\n\t\t\thovered: 1,\n\t\t\tdefault: 0.3,\n\t\t},\n\t},\n\tbox: {\n\t\topacity: {\n\t\t\thovered: 0.5,\n\t\t\tdefault: 0.3,\n\t\t},\n\t},\n\tstrokeWidth: {\n\t\tdefault: 1,\n\t\tthicker: 2,\n\t},\n};\n\nexport const histogram = {\n\tdefaultBins: 10,\n};\n\nexport const legend = {\n\titems: {\n\t\tstatus: {\n\t\t\tACTIVE: 1,\n\t\t\tDISABLED: 0,\n\t\t},\n\t\thorizontalSpace: 12,\n\t\tverticalSpace: 24,\n\t\ttextYOffset: 8,\n\t\tspaceAfter: 4,\n\t},\n\tcheckbox: {\n\t\tradius: 6.5,\n\t},\n\tradius: {\n\t\ticonData: [\n\t\t\t{ cx: 7, cy: 7, r: 6.5 },\n\t\t\t{ cx: 7, cy: 10, r: 3.5 },\n\t\t],\n\t\tfill: null,\n\t\tstroke: '#8c8c8c',\n\t},\n\tline: {\n\t\tyPosition: 6,\n\t\twidth: 24,\n\t\tstrokeWidth: 1.4,\n\t\tfill: null,\n\t\tstroke: '#999999',\n\t},\n\tarea: {\n\t\twidth: 24,\n\t\theight: 14,\n\t\tfill: '#6f6f6f',\n\t\tstroke: null,\n\t},\n\tsize: {\n\t\ticonData: [\n\t\t\t{ width: 23, height: 12 },\n\t\t\t{ width: 13, height: 6 },\n\t\t],\n\t\tfill: null,\n\t\tstroke: '#8D8D8D',\n\t},\n\tquartile: {\n\t\ticonData: [\n\t\t\t{ x: 0, y: 0, width: 24, height: 13 },\n\t\t\t{ x: 11, y: 4, width: 1, height: 4 },\n\t\t],\n\t},\n\tzoom: {\n\t\ticonData: [{ x: 0, y: 0, width: 12, height: 12 }],\n\t\tcolor: '#8D8D8D',\n\t},\n\tcolor: {\n\t\tbarWidth: 300,\n\t\tbarHeight: 8,\n\t\taxisYTranslation: 10,\n\t},\n};\n\nexport const lines = {\n\topacity: {\n\t\tunselected: 0.3,\n\t\tselected: 1,\n\t},\n\tweight: {\n\t\tselected: 2,\n\t\tunselected: 1,\n\t},\n};\n\nexport const meter = {\n\tstatusBar: {\n\t\tpaddingRight: 5,\n\t},\n\tstatus: {\n\t\tindicatorSize: 16,\n\t\tpaddingLeft: 15,\n\t},\n\ttotal: {\n\t\tpaddingLeft: 36,\n\t\tpaddingRight: 24,\n\t},\n\theight: {\n\t\tdefault: 8,\n\t\tproportional: 16,\n\t},\n\tdividerWidth: 2,\n};\n\nexport const pie = {\n\tradiusOffset: -15,\n\tinnerRadius: 2,\n\tpadAngle: 0.007,\n\thoverArc: {\n\t\touterRadiusOffset: 3,\n\t},\n\txOffset: 30,\n\tyOffset: 20,\n\tyOffsetCallout: 10,\n\tcallout: {\n\t\tminSliceDegree: 5,\n\t\toffsetX: 15,\n\t\toffsetY: 12,\n\t\thorizontalLineLength: 8,\n\t\ttextMargin: 2,\n\t},\n};\n\nexport const radar = {\n\topacity: {\n\t\tunselected: 0.1,\n\t\tselected: 0.3,\n\t},\n\txLabelPadding: 10,\n\tyLabelPadding: 8,\n\tyTicksNumber: 4,\n\tminRange: 10,\n\txAxisRectHeight: 50,\n\tdotsRadius: 5,\n};\n\nexport const alluvial = {\n\tnodeWidth: 4,\n\tnodeHoveredWidth: 8,\n\tminNodePadding: 24,\n\topacity: {\n\t\tunfocus: 0.3,\n\t\tdefault: 0.8,\n\t\tselected: 1,\n\t},\n};\n\nexport const heatmap = {\n\tminCellDividerDimension: 16,\n\t// Ensures axes lines are displayed with or without stroke disabled\n\tchartPadding: 0.5,\n};\n\nexport const spacers = {\n\tdefault: {\n\t\tsize: 24,\n\t},\n};\n\nexport const tooltips = {\n\thorizontalOffset: 10,\n};\n\n/**\n * Base transition configuration\n */\nexport const transitions = {\n\tdefault: {\n\t\tduration: 300,\n\t},\n\tpie_slice_mouseover: {\n\t\tduration: 100,\n\t},\n\tpie_chart_titles: {\n\t\tduration: 375,\n\t},\n\tgraph_element_mouseover_fill_update: {\n\t\tduration: 100,\n\t},\n\tgraph_element_mouseout_fill_update: {\n\t\tduration: 100,\n\t},\n};\n\nexport const toolbar = {\n\tbuttonSize: 32,\n\ticonSize: 20,\n\theight: 32,\n\tspacerHeight: 10,\n\ticonPadding: 6,\n};\n\nexport const zoomBar = {\n\theight: {\n\t\t[ZoomBarTypes.GRAPH_VIEW]: 32,\n\t\t[ZoomBarTypes.SLIDER_VIEW]: 10,\n\t},\n\tspacerHeight: 8,\n\thandleWidth: 5,\n\thandleBarWidth: 1,\n\thandleBarHeight: 12,\n};\n\nexport const defaultLegendAdditionalItems = [\n\t{\n\t\ttype: LegendItemType.RADIUS,\n\t\tname: 'Radius',\n\t},\n\t{\n\t\ttype: LegendItemType.AREA,\n\t\tname: 'Poor area',\n\t},\n\t{\n\t\ttype: LegendItemType.AREA,\n\t\tname: 'Satisfactory area',\n\t},\n\t{\n\t\ttype: LegendItemType.AREA,\n\t\tname: 'Great area',\n\t},\n\t{\n\t\ttype: LegendItemType.QUARTILE,\n\t\tname: 'Quartiles',\n\t},\n];\n"]}
|
package/configuration.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseChartOptions, AxisChartOptions, ScatterChartOptions, LollipopChartOptions, LineChartOptions, BarChartOptions, StackedBarChartOptions, BoxplotChartOptions, AreaChartOptions, PieChartOptions, GaugeChartOptions, DonutChartOptions, BubbleChartOptions, BulletChartOptions, HistogramChartOptions, RadarChartOptions, ComboChartOptions, TreeChartOptions, TreemapChartOptions, CirclePackChartOptions, WorldCloudChartOptions, AlluvialChartOptions, GridOptions, RulerOptions, TimeScaleOptions, TooltipOptions, MeterChartOptions, ProportionalMeterChartOptions } from './interfaces';
|
|
1
|
+
import { BaseChartOptions, AxisChartOptions, ScatterChartOptions, LollipopChartOptions, LineChartOptions, BarChartOptions, StackedBarChartOptions, BoxplotChartOptions, AreaChartOptions, PieChartOptions, GaugeChartOptions, DonutChartOptions, BubbleChartOptions, BulletChartOptions, HistogramChartOptions, RadarChartOptions, ComboChartOptions, TreeChartOptions, TreemapChartOptions, CirclePackChartOptions, WorldCloudChartOptions, AlluvialChartOptions, GridOptions, RulerOptions, TimeScaleOptions, TooltipOptions, MeterChartOptions, ProportionalMeterChartOptions, HeatmapChartOptions } from './interfaces';
|
|
2
2
|
/**
|
|
3
3
|
* Grid options
|
|
4
4
|
*/
|
|
@@ -39,5 +39,6 @@ export declare const options: {
|
|
|
39
39
|
circlePackChart: CirclePackChartOptions;
|
|
40
40
|
wordCloudChart: WorldCloudChartOptions;
|
|
41
41
|
alluvialChart: AlluvialChartOptions;
|
|
42
|
+
heatmapChart: HeatmapChartOptions;
|
|
42
43
|
};
|
|
43
44
|
export * from './configuration-non-customizable';
|
package/configuration.js
CHANGED
|
@@ -8,7 +8,7 @@ var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
|
8
8
|
import { Tools } from './tools';
|
|
9
9
|
import {
|
|
10
10
|
// ENUMS
|
|
11
|
-
Alignments, GaugeTypes, LegendPositions, TruncationTypes, ToolbarControlTypes, ZoomBarTypes, LegendItemType, TreeTypes, } from './interfaces';
|
|
11
|
+
Alignments, GaugeTypes, LegendPositions, TruncationTypes, ToolbarControlTypes, ZoomBarTypes, LegendItemType, TreeTypes, DividerStatus, } from './interfaces';
|
|
12
12
|
import enUSLocaleObject from 'date-fns/locale/en-US/index';
|
|
13
13
|
import { circlePack } from './configuration-non-customizable';
|
|
14
14
|
/*
|
|
@@ -487,6 +487,17 @@ var alluvialChart = Tools.merge({}, chart, {
|
|
|
487
487
|
nodes: [],
|
|
488
488
|
},
|
|
489
489
|
});
|
|
490
|
+
var heatmapChart = Tools.merge({}, chart, {
|
|
491
|
+
axes: axes,
|
|
492
|
+
heatmap: {
|
|
493
|
+
divider: {
|
|
494
|
+
state: DividerStatus.AUTO,
|
|
495
|
+
},
|
|
496
|
+
colorLegend: {
|
|
497
|
+
type: 'linear',
|
|
498
|
+
},
|
|
499
|
+
},
|
|
500
|
+
});
|
|
490
501
|
export var options = {
|
|
491
502
|
chart: chart,
|
|
492
503
|
axisChart: axisChart,
|
|
@@ -514,6 +525,7 @@ export var options = {
|
|
|
514
525
|
circlePackChart: circlePackChart,
|
|
515
526
|
wordCloudChart: wordCloudChart,
|
|
516
527
|
alluvialChart: alluvialChart,
|
|
528
|
+
heatmapChart: heatmapChart,
|
|
517
529
|
};
|
|
518
530
|
export * from './configuration-non-customizable';
|
|
519
531
|
//# sourceMappingURL=../src/configuration.js.map
|