UNPKG

@qogni/dygraphs

Version:

dygraphs is a fast, flexible open source JavaScript charting library.

124 lines (123 loc) 17 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var DygraphTickers = _interopRequireWildcard(require("./dygraph-tickers")); var _dygraphInteractionModel = _interopRequireDefault(require("./dygraph-interaction-model")); var _dygraphCanvas = _interopRequireDefault(require("./dygraph-canvas")); var utils = _interopRequireWildcard(require("./dygraph-utils")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } // Default attribute values. var DEFAULT_ATTRS = { highlightCircleSize: 3, highlightSeriesOpts: null, highlightSeriesBackgroundAlpha: 0.5, highlightSeriesBackgroundColor: 'rgb(255, 255, 255)', labelsSeparateLines: false, labelsShowZeroValues: true, labelsKMB: false, labelsKMG2: false, showLabelsOnHighlight: true, digitsAfterDecimal: 2, maxNumberWidth: 6, sigFigs: null, strokeWidth: 1.0, strokeBorderWidth: 0, strokeBorderColor: "white", axisTickSize: 3, axisLabelFontSize: 14, rightGap: 5, showRoller: false, xValueParser: undefined, delimiter: ',', sigma: 2.0, errorBars: false, fractions: false, wilsonInterval: true, // only relevant if fractions is true customBars: false, fillGraph: false, fillAlpha: 0.15, connectSeparatedPoints: false, stackedGraph: false, stackedGraphNaNFill: 'all', hideOverlayOnMouseOut: true, resizable: 'no', legend: 'onmouseover', legendFollowOffsetX: 50, legendFollowOffsetY: -50, stepPlot: false, xRangePad: 0, yRangePad: null, drawAxesAtZero: false, // Sizes of the various chart labels. titleHeight: 28, xLabelHeight: 18, yLabelWidth: 18, axisLineColor: "black", axisLineWidth: 0.3, gridLineWidth: 0.3, axisLabelWidth: 50, gridLineColor: "rgb(128,128,128)", interactionModel: _dygraphInteractionModel["default"].defaultModel, animatedZooms: false, // (for now) animateBackgroundFade: true, // Range selector options showRangeSelector: false, rangeSelectorHeight: 40, rangeSelectorPlotStrokeColor: "#808FAB", rangeSelectorPlotFillGradientColor: "white", rangeSelectorPlotFillColor: "#A7B1C4", rangeSelectorBackgroundStrokeColor: "gray", rangeSelectorBackgroundLineWidth: 1, rangeSelectorPlotLineWidth: 1.5, rangeSelectorForegroundStrokeColor: "black", rangeSelectorForegroundLineWidth: 1, rangeSelectorAlpha: 0.6, showInRangeSelector: null, // The ordering here ensures that central lines always appear above any // fill bars/error bars. plotter: [_dygraphCanvas["default"]._fillPlotter, _dygraphCanvas["default"]._errorPlotter, _dygraphCanvas["default"]._linePlotter], plugins: [], // per-axis options axes: { x: { pixelsPerLabel: 70, axisLabelWidth: 60, axisLabelFormatter: utils.dateAxisLabelFormatter, valueFormatter: utils.dateValueFormatter, drawGrid: true, drawAxis: true, independentTicks: true, ticker: DygraphTickers.dateTicker }, y: { axisLabelWidth: 50, pixelsPerLabel: 30, valueFormatter: utils.numberValueFormatter, axisLabelFormatter: utils.numberAxisLabelFormatter, drawGrid: true, drawAxis: true, independentTicks: true, ticker: DygraphTickers.numericTicks }, y2: { axisLabelWidth: 50, pixelsPerLabel: 30, valueFormatter: utils.numberValueFormatter, axisLabelFormatter: utils.numberAxisLabelFormatter, drawAxis: true, // only applies when there are two axes of data. drawGrid: false, independentTicks: false, ticker: DygraphTickers.numericTicks } } }; var _default = exports["default"] = DEFAULT_ATTRS; module.exports = exports.default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsIkR5Z3JhcGhUaWNrZXJzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX2R5Z3JhcGhJbnRlcmFjdGlvbk1vZGVsIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9keWdyYXBoQ2FudmFzIiwidXRpbHMiLCJlIiwiX19lc01vZHVsZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIldlYWtNYXAiLCJyIiwidCIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJERUZBVUxUX0FUVFJTIiwiaGlnaGxpZ2h0Q2lyY2xlU2l6ZSIsImhpZ2hsaWdodFNlcmllc09wdHMiLCJoaWdobGlnaHRTZXJpZXNCYWNrZ3JvdW5kQWxwaGEiLCJoaWdobGlnaHRTZXJpZXNCYWNrZ3JvdW5kQ29sb3IiLCJsYWJlbHNTZXBhcmF0ZUxpbmVzIiwibGFiZWxzU2hvd1plcm9WYWx1ZXMiLCJsYWJlbHNLTUIiLCJsYWJlbHNLTUcyIiwic2hvd0xhYmVsc09uSGlnaGxpZ2h0IiwiZGlnaXRzQWZ0ZXJEZWNpbWFsIiwibWF4TnVtYmVyV2lkdGgiLCJzaWdGaWdzIiwic3Ryb2tlV2lkdGgiLCJzdHJva2VCb3JkZXJXaWR0aCIsInN0cm9rZUJvcmRlckNvbG9yIiwiYXhpc1RpY2tTaXplIiwiYXhpc0xhYmVsRm9udFNpemUiLCJyaWdodEdhcCIsInNob3dSb2xsZXIiLCJ4VmFsdWVQYXJzZXIiLCJ1bmRlZmluZWQiLCJkZWxpbWl0ZXIiLCJzaWdtYSIsImVycm9yQmFycyIsImZyYWN0aW9ucyIsIndpbHNvbkludGVydmFsIiwiY3VzdG9tQmFycyIsImZpbGxHcmFwaCIsImZpbGxBbHBoYSIsImNvbm5lY3RTZXBhcmF0ZWRQb2ludHMiLCJzdGFja2VkR3JhcGgiLCJzdGFja2VkR3JhcGhOYU5GaWxsIiwiaGlkZU92ZXJsYXlPbk1vdXNlT3V0IiwicmVzaXphYmxlIiwibGVnZW5kIiwibGVnZW5kRm9sbG93T2Zmc2V0WCIsImxlZ2VuZEZvbGxvd09mZnNldFkiLCJzdGVwUGxvdCIsInhSYW5nZVBhZCIsInlSYW5nZVBhZCIsImRyYXdBeGVzQXRaZXJvIiwidGl0bGVIZWlnaHQiLCJ4TGFiZWxIZWlnaHQiLCJ5TGFiZWxXaWR0aCIsImF4aXNMaW5lQ29sb3IiLCJheGlzTGluZVdpZHRoIiwiZ3JpZExpbmVXaWR0aCIsImF4aXNMYWJlbFdpZHRoIiwiZ3JpZExpbmVDb2xvciIsImludGVyYWN0aW9uTW9kZWwiLCJEeWdyYXBoSW50ZXJhY3Rpb24iLCJkZWZhdWx0TW9kZWwiLCJhbmltYXRlZFpvb21zIiwiYW5pbWF0ZUJhY2tncm91bmRGYWRlIiwic2hvd1JhbmdlU2VsZWN0b3IiLCJyYW5nZVNlbGVjdG9ySGVpZ2h0IiwicmFuZ2VTZWxlY3RvclBsb3RTdHJva2VDb2xvciIsInJhbmdlU2VsZWN0b3JQbG90RmlsbEdyYWRpZW50Q29sb3IiLCJyYW5nZVNlbGVjdG9yUGxvdEZpbGxDb2xvciIsInJhbmdlU2VsZWN0b3JCYWNrZ3JvdW5kU3Ryb2tlQ29sb3IiLCJyYW5nZVNlbGVjdG9yQmFja2dyb3VuZExpbmVXaWR0aCIsInJhbmdlU2VsZWN0b3JQbG90TGluZVdpZHRoIiwicmFuZ2VTZWxlY3RvckZvcmVncm91bmRTdHJva2VDb2xvciIsInJhbmdlU2VsZWN0b3JGb3JlZ3JvdW5kTGluZVdpZHRoIiwicmFuZ2VTZWxlY3RvckFscGhhIiwic2hvd0luUmFuZ2VTZWxlY3RvciIsInBsb3R0ZXIiLCJEeWdyYXBoQ2FudmFzUmVuZGVyZXIiLCJfZmlsbFBsb3R0ZXIiLCJfZXJyb3JQbG90dGVyIiwiX2xpbmVQbG90dGVyIiwicGx1Z2lucyIsImF4ZXMiLCJ4IiwicGl4ZWxzUGVyTGFiZWwiLCJheGlzTGFiZWxGb3JtYXR0ZXIiLCJkYXRlQXhpc0xhYmVsRm9ybWF0dGVyIiwidmFsdWVGb3JtYXR0ZXIiLCJkYXRlVmFsdWVGb3JtYXR0ZXIiLCJkcmF3R3JpZCIsImRyYXdBeGlzIiwiaW5kZXBlbmRlbnRUaWNrcyIsInRpY2tlciIsImRhdGVUaWNrZXIiLCJ5IiwibnVtYmVyVmFsdWVGb3JtYXR0ZXIiLCJudW1iZXJBeGlzTGFiZWxGb3JtYXR0ZXIiLCJudW1lcmljVGlja3MiLCJ5MiIsIl9kZWZhdWx0IiwibW9kdWxlIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9keWdyYXBoLWRlZmF1bHQtYXR0cnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnXG5cbmltcG9ydCAqIGFzIER5Z3JhcGhUaWNrZXJzIGZyb20gJy4vZHlncmFwaC10aWNrZXJzJztcbmltcG9ydCBEeWdyYXBoSW50ZXJhY3Rpb24gZnJvbSAnLi9keWdyYXBoLWludGVyYWN0aW9uLW1vZGVsJztcbmltcG9ydCBEeWdyYXBoQ2FudmFzUmVuZGVyZXIgZnJvbSAnLi9keWdyYXBoLWNhbnZhcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL2R5Z3JhcGgtdXRpbHMnO1xuXG4vLyBEZWZhdWx0IGF0dHJpYnV0ZSB2YWx1ZXMuXG52YXIgREVGQVVMVF9BVFRSUyA9IHtcbiAgaGlnaGxpZ2h0Q2lyY2xlU2l6ZTogMyxcbiAgaGlnaGxpZ2h0U2VyaWVzT3B0czogbnVsbCxcbiAgaGlnaGxpZ2h0U2VyaWVzQmFja2dyb3VuZEFscGhhOiAwLjUsXG4gIGhpZ2hsaWdodFNlcmllc0JhY2tncm91bmRDb2xvcjogJ3JnYigyNTUsIDI1NSwgMjU1KScsXG5cbiAgbGFiZWxzU2VwYXJhdGVMaW5lczogZmFsc2UsXG4gIGxhYmVsc1Nob3daZXJvVmFsdWVzOiB0cnVlLFxuICBsYWJlbHNLTUI6IGZhbHNlLFxuICBsYWJlbHNLTUcyOiBmYWxzZSxcbiAgc2hvd0xhYmVsc09uSGlnaGxpZ2h0OiB0cnVlLFxuXG4gIGRpZ2l0c0FmdGVyRGVjaW1hbDogMixcbiAgbWF4TnVtYmVyV2lkdGg6IDYsXG4gIHNpZ0ZpZ3M6IG51bGwsXG5cbiAgc3Ryb2tlV2lkdGg6IDEuMCxcbiAgc3Ryb2tlQm9yZGVyV2lkdGg6IDAsXG4gIHN0cm9rZUJvcmRlckNvbG9yOiBcIndoaXRlXCIsXG5cbiAgYXhpc1RpY2tTaXplOiAzLFxuICBheGlzTGFiZWxGb250U2l6ZTogMTQsXG4gIHJpZ2h0R2FwOiA1LFxuXG4gIHNob3dSb2xsZXI6IGZhbHNlLFxuICB4VmFsdWVQYXJzZXI6IHVuZGVmaW5lZCxcblxuICBkZWxpbWl0ZXI6ICcsJyxcblxuICBzaWdtYTogMi4wLFxuICBlcnJvckJhcnM6IGZhbHNlLFxuICBmcmFjdGlvbnM6IGZhbHNlLFxuICB3aWxzb25JbnRlcnZhbDogdHJ1ZSwgIC8vIG9ubHkgcmVsZXZhbnQgaWYgZnJhY3Rpb25zIGlzIHRydWVcbiAgY3VzdG9tQmFyczogZmFsc2UsXG4gIGZpbGxHcmFwaDogZmFsc2UsXG4gIGZpbGxBbHBoYTogMC4xNSxcbiAgY29ubmVjdFNlcGFyYXRlZFBvaW50czogZmFsc2UsXG5cbiAgc3RhY2tlZEdyYXBoOiBmYWxzZSxcbiAgc3RhY2tlZEdyYXBoTmFORmlsbDogJ2FsbCcsXG4gIGhpZGVPdmVybGF5T25Nb3VzZU91dDogdHJ1ZSxcbiAgcmVzaXphYmxlOiAnbm8nLFxuXG4gIGxlZ2VuZDogJ29ubW91c2VvdmVyJyxcbiAgbGVnZW5kRm9sbG93T2Zmc2V0WDogNTAsXG4gIGxlZ2VuZEZvbGxvd09mZnNldFk6IC01MCxcbiAgc3RlcFBsb3Q6IGZhbHNlLFxuICB4UmFuZ2VQYWQ6IDAsXG4gIHlSYW5nZVBhZDogbnVsbCxcbiAgZHJhd0F4ZXNBdFplcm86IGZhbHNlLFxuXG4gIC8vIFNpemVzIG9mIHRoZSB2YXJpb3VzIGNoYXJ0IGxhYmVscy5cbiAgdGl0bGVIZWlnaHQ6IDI4LFxuICB4TGFiZWxIZWlnaHQ6IDE4LFxuICB5TGFiZWxXaWR0aDogMTgsXG5cbiAgYXhpc0xpbmVDb2xvcjogXCJibGFja1wiLFxuICBheGlzTGluZVdpZHRoOiAwLjMsXG4gIGdyaWRMaW5lV2lkdGg6IDAuMyxcbiAgYXhpc0xhYmVsV2lkdGg6IDUwLFxuICBncmlkTGluZUNvbG9yOiBcInJnYigxMjgsMTI4LDEyOClcIixcblxuICBpbnRlcmFjdGlvbk1vZGVsOiBEeWdyYXBoSW50ZXJhY3Rpb24uZGVmYXVsdE1vZGVsLFxuICBhbmltYXRlZFpvb21zOiBmYWxzZSwgIC8vIChmb3Igbm93KVxuICBhbmltYXRlQmFja2dyb3VuZEZhZGU6IHRydWUsXG5cbiAgLy8gUmFuZ2Ugc2VsZWN0b3Igb3B0aW9uc1xuICBzaG93UmFuZ2VTZWxlY3RvcjogZmFsc2UsXG4gIHJhbmdlU2VsZWN0b3JIZWlnaHQ6IDQwLFxuICByYW5nZVNlbGVjdG9yUGxvdFN0cm9rZUNvbG9yOiBcIiM4MDhGQUJcIixcbiAgcmFuZ2VTZWxlY3RvclBsb3RGaWxsR3JhZGllbnRDb2xvcjogXCJ3aGl0ZVwiLFxuICByYW5nZVNlbGVjdG9yUGxvdEZpbGxDb2xvcjogXCIjQTdCMUM0XCIsXG4gIHJhbmdlU2VsZWN0b3JCYWNrZ3JvdW5kU3Ryb2tlQ29sb3I6IFwiZ3JheVwiLFxuICByYW5nZVNlbGVjdG9yQmFja2dyb3VuZExpbmVXaWR0aDogMSxcbiAgcmFuZ2VTZWxlY3RvclBsb3RMaW5lV2lkdGg6MS41LFxuICByYW5nZVNlbGVjdG9yRm9yZWdyb3VuZFN0cm9rZUNvbG9yOiBcImJsYWNrXCIsXG4gIHJhbmdlU2VsZWN0b3JGb3JlZ3JvdW5kTGluZVdpZHRoOiAxLFxuICByYW5nZVNlbGVjdG9yQWxwaGE6IDAuNixcbiAgc2hvd0luUmFuZ2VTZWxlY3RvcjogbnVsbCxcblxuICAvLyBUaGUgb3JkZXJpbmcgaGVyZSBlbnN1cmVzIHRoYXQgY2VudHJhbCBsaW5lcyBhbHdheXMgYXBwZWFyIGFib3ZlIGFueVxuICAvLyBmaWxsIGJhcnMvZXJyb3IgYmFycy5cbiAgcGxvdHRlcjogW1xuICAgIER5Z3JhcGhDYW52YXNSZW5kZXJlci5fZmlsbFBsb3R0ZXIsXG4gICAgRHlncmFwaENhbnZhc1JlbmRlcmVyLl9lcnJvclBsb3R0ZXIsXG4gICAgRHlncmFwaENhbnZhc1JlbmRlcmVyLl9saW5lUGxvdHRlclxuICBdLFxuXG4gIHBsdWdpbnM6IFsgXSxcblxuICAvLyBwZXItYXhpcyBvcHRpb25zXG4gIGF4ZXM6IHtcbiAgICB4OiB7XG4gICAgICBwaXhlbHNQZXJMYWJlbDogNzAsXG4gICAgICBheGlzTGFiZWxXaWR0aDogNjAsXG4gICAgICBheGlzTGFiZWxGb3JtYXR0ZXI6IHV0aWxzLmRhdGVBeGlzTGFiZWxGb3JtYXR0ZXIsXG4gICAgICB2YWx1ZUZvcm1hdHRlcjogdXRpbHMuZGF0ZVZhbHVlRm9ybWF0dGVyLFxuICAgICAgZHJhd0dyaWQ6IHRydWUsXG4gICAgICBkcmF3QXhpczogdHJ1ZSxcbiAgICAgIGluZGVwZW5kZW50VGlja3M6IHRydWUsXG4gICAgICB0aWNrZXI6IER5Z3JhcGhUaWNrZXJzLmRhdGVUaWNrZXJcbiAgICB9LFxuICAgIHk6IHtcbiAgICAgIGF4aXNMYWJlbFdpZHRoOiA1MCxcbiAgICAgIHBpeGVsc1BlckxhYmVsOiAzMCxcbiAgICAgIHZhbHVlRm9ybWF0dGVyOiB1dGlscy5udW1iZXJWYWx1ZUZvcm1hdHRlcixcbiAgICAgIGF4aXNMYWJlbEZvcm1hdHRlcjogdXRpbHMubnVtYmVyQXhpc0xhYmVsRm9ybWF0dGVyLFxuICAgICAgZHJhd0dyaWQ6IHRydWUsXG4gICAgICBkcmF3QXhpczogdHJ1ZSxcbiAgICAgIGluZGVwZW5kZW50VGlja3M6IHRydWUsXG4gICAgICB0aWNrZXI6IER5Z3JhcGhUaWNrZXJzLm51bWVyaWNUaWNrc1xuICAgIH0sXG4gICAgeTI6IHtcbiAgICAgIGF4aXNMYWJlbFdpZHRoOiA1MCxcbiAgICAgIHBpeGVsc1BlckxhYmVsOiAzMCxcbiAgICAgIHZhbHVlRm9ybWF0dGVyOiB1dGlscy5udW1iZXJWYWx1ZUZvcm1hdHRlcixcbiAgICAgIGF4aXNMYWJlbEZvcm1hdHRlcjogdXRpbHMubnVtYmVyQXhpc0xhYmVsRm9ybWF0dGVyLFxuICAgICAgZHJhd0F4aXM6IHRydWUsICAvLyBvbmx5IGFwcGxpZXMgd2hlbiB0aGVyZSBhcmUgdHdvIGF4ZXMgb2YgZGF0YS5cbiAgICAgIGRyYXdHcmlkOiBmYWxzZSxcbiAgICAgIGluZGVwZW5kZW50VGlja3M6IGZhbHNlLFxuICAgICAgdGlja2VyOiBEeWdyYXBoVGlja2Vycy5udW1lcmljVGlja3NcbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IERFRkFVTFRfQVRUUlM7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQUFBLE1BQUEsQ0FBQUMsY0FBQSxDQUFBQyxPQUFBO0VBQUFDLEtBQUE7QUFBQTtBQUFBRCxPQUFBO0FBRVosSUFBQUUsY0FBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsd0JBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLGNBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUwsdUJBQUEsQ0FBQUMsT0FBQTtBQUF5QyxTQUFBRSx1QkFBQUcsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLGdCQUFBQSxDQUFBO0FBQUEsU0FBQUUseUJBQUFGLENBQUEsNkJBQUFHLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUQsd0JBQUEsWUFBQUEseUJBQUFGLENBQUEsV0FBQUEsQ0FBQSxHQUFBSyxDQUFBLEdBQUFELENBQUEsS0FBQUosQ0FBQTtBQUFBLFNBQUFOLHdCQUFBTSxDQUFBLEVBQUFJLENBQUEsU0FBQUEsQ0FBQSxJQUFBSixDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxTQUFBRCxDQUFBLGVBQUFBLENBQUEsdUJBQUFBLENBQUEseUJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUssQ0FBQSxHQUFBSCx3QkFBQSxDQUFBRSxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxHQUFBLENBQUFOLENBQUEsVUFBQUss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