@amcharts/amcharts5 5.2.10 → 5.2.11
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/.internal/charts/pie/PieSeries.js +44 -44
- package/.internal/charts/pie/PieSeries.js.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.js +14 -2
- package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverage.d.ts +1 -1
- package/.internal/charts/stock/indicators/MovingAverage.js.map +1 -1
- package/.internal/charts/stock/indicators/VWAP.d.ts +33 -0
- package/.internal/charts/stock/indicators/VWAP.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/VWAP.js +151 -0
- package/.internal/charts/stock/indicators/VWAP.js.map +1 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.js +9 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
- package/.internal/charts/xy/XYChart.d.ts +16 -0
- package/.internal/charts/xy/XYChart.d.ts.map +1 -1
- package/.internal/charts/xy/XYChart.js +14 -0
- package/.internal/charts/xy/XYChart.js.map +1 -1
- package/.internal/charts/xy/XYCursor.d.ts +7 -1
- package/.internal/charts/xy/XYCursor.d.ts.map +1 -1
- package/.internal/charts/xy/XYCursor.js.map +1 -1
- package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/CategoryAxis.js +1 -0
- package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.d.ts +1 -0
- package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.js +8 -0
- package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.d.ts +1 -0
- package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.js +15 -7
- package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.js +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
- package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/LineSeries.js +1 -0
- package/.internal/charts/xy/series/LineSeries.js.map +1 -1
- package/.internal/core/Classes.d.ts +2 -0
- package/.internal/core/Classes.d.ts.map +1 -1
- package/.internal/core/Classes.js.map +1 -1
- package/.internal/core/Root.d.ts +7 -0
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +158 -0
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/render/Container.d.ts +10 -0
- package/.internal/core/render/Container.d.ts.map +1 -1
- package/.internal/core/render/Container.js +55 -4
- package/.internal/core/render/Container.js.map +1 -1
- package/.internal/core/render/HorizontalLayout.d.ts.map +1 -1
- package/.internal/core/render/HorizontalLayout.js +18 -15
- package/.internal/core/render/HorizontalLayout.js.map +1 -1
- package/.internal/core/render/Label.d.ts.map +1 -1
- package/.internal/core/render/Label.js +8 -2
- package/.internal/core/render/Label.js.map +1 -1
- package/.internal/core/render/Sprite.d.ts +21 -0
- package/.internal/core/render/Sprite.d.ts.map +1 -1
- package/.internal/core/render/Sprite.js +45 -21
- package/.internal/core/render/Sprite.js.map +1 -1
- package/.internal/core/render/Tooltip.d.ts +6 -0
- package/.internal/core/render/Tooltip.d.ts.map +1 -1
- package/.internal/core/render/Tooltip.js +4 -0
- package/.internal/core/render/Tooltip.js.map +1 -1
- package/.internal/core/render/VerticalLayout.d.ts.map +1 -1
- package/.internal/core/render/VerticalLayout.js +18 -15
- package/.internal/core/render/VerticalLayout.js.map +1 -1
- package/.internal/core/render/gradients/RadialGradient.d.ts.map +1 -1
- package/.internal/core/render/gradients/RadialGradient.js +9 -0
- package/.internal/core/render/gradients/RadialGradient.js.map +1 -1
- package/.internal/core/util/Entity.d.ts +1 -0
- package/.internal/core/util/Entity.d.ts.map +1 -1
- package/.internal/core/util/Entity.js +15 -4
- package/.internal/core/util/Entity.js.map +1 -1
- package/.internal/core/util/Modal.d.ts +13 -0
- package/.internal/core/util/Modal.d.ts.map +1 -1
- package/.internal/core/util/Modal.js +13 -0
- package/.internal/core/util/Modal.js.map +1 -1
- package/CHANGELOG.md +22 -0
- package/examples/javascript/flow-chord/package.json +1 -1
- package/examples/javascript/flow-chord-directed/package.json +1 -1
- package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/javascript/flow-sankey/package.json +1 -1
- package/examples/javascript/gauge/package.json +1 -1
- package/examples/javascript/gauge-bands/package.json +1 -1
- package/examples/javascript/hierarchy-force-directed/package.json +1 -1
- package/examples/javascript/hierarchy-pack/package.json +1 -1
- package/examples/javascript/hierarchy-partition/package.json +1 -1
- package/examples/javascript/hierarchy-sunburst/package.json +1 -1
- package/examples/javascript/hierarchy-tree/package.json +1 -1
- package/examples/javascript/hierarchy-treemap/package.json +1 -1
- package/examples/javascript/json/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +1 -1
- package/examples/javascript/map-day-and-night/package.json +1 -1
- package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/javascript/map-globe-with-projected-circles/index.js +1 -1
- package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/javascript/map-with-bubbles/index.js +1 -1
- package/examples/javascript/map-with-bubbles/package.json +1 -1
- package/examples/javascript/map-zoom-to-country/package.json +1 -1
- package/examples/javascript/misc-40-charts/package.json +1 -1
- package/examples/javascript/misc-microchart-grid/package.json +1 -1
- package/examples/javascript/pie-chart/package.json +1 -1
- package/examples/javascript/pie-donut-chart/package.json +1 -1
- package/examples/javascript/pie-variable-radius/package.json +1 -1
- package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
- package/examples/javascript/radar-heat-map/package.json +1 -1
- package/examples/javascript/radar-line/package.json +1 -1
- package/examples/javascript/radar-time-line/index.js +1 -1
- package/examples/javascript/radar-time-line/package.json +1 -1
- package/examples/javascript/sliced-funnel/package.json +1 -1
- package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/javascript/sliced-pyramid/package.json +1 -1
- package/examples/javascript/stock-chart/package.json +1 -1
- package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
- package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
- package/examples/javascript/stock-chart-intraday/package.json +1 -1
- package/examples/javascript/stock-chart-live/package.json +1 -1
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/javascript/venn-diagram/package.json +1 -1
- package/examples/javascript/wordcloud-with-data/package.json +1 -1
- package/examples/javascript/wordcloud-with-text/package.json +1 -1
- package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/javascript/xy-bubble/index.js +1 -1
- package/examples/javascript/xy-bubble/package.json +1 -1
- package/examples/javascript/xy-candlestick/package.json +1 -1
- package/examples/javascript/xy-clustered-column/package.json +1 -1
- package/examples/javascript/xy-column/package.json +1 -1
- package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/javascript/xy-data-grouping/package.json +1 -1
- package/examples/javascript/xy-draggable-range/package.json +1 -1
- package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/javascript/xy-dumbbell plot/package.json +1 -1
- package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/javascript/xy-line/package.json +1 -1
- package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/javascript/xy-live-data/package.json +1 -1
- package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/javascript/xy-ohlc/package.json +1 -1
- package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/javascript/xy-smoothed-line/package.json +1 -1
- package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/javascript/xy-stacked-column/package.json +1 -1
- package/examples/javascript/xy-stacked-step/package.json +1 -1
- package/examples/javascript/xy-stock/package.json +1 -1
- package/examples/javascript/xy-stock-comparing/package.json +1 -1
- package/examples/typescript/flow-chord/package.json +1 -1
- package/examples/typescript/flow-chord-directed/package.json +1 -1
- package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/typescript/flow-sankey/package.json +1 -1
- package/examples/typescript/gauge/package.json +1 -1
- package/examples/typescript/gauge-bands/package.json +1 -1
- package/examples/typescript/hierarchy-force-directed/package.json +1 -1
- package/examples/typescript/hierarchy-pack/package.json +1 -1
- package/examples/typescript/hierarchy-partition/package.json +1 -1
- package/examples/typescript/hierarchy-sunburst/package.json +1 -1
- package/examples/typescript/hierarchy-tree/package.json +1 -1
- package/examples/typescript/hierarchy-treemap/package.json +1 -1
- package/examples/typescript/json/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +1 -1
- package/examples/typescript/map-day-and-night/package.json +1 -1
- package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/typescript/map-globe-with-projected-circles/index.ts +1 -1
- package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/typescript/map-with-bubbles/index.ts +1 -1
- package/examples/typescript/map-with-bubbles/package.json +1 -1
- package/examples/typescript/map-zoom-to-country/package.json +1 -1
- package/examples/typescript/misc-40-charts/package.json +1 -1
- package/examples/typescript/misc-microchart-grid/package.json +1 -1
- package/examples/typescript/pie-chart/package.json +1 -1
- package/examples/typescript/pie-donut-chart/package.json +1 -1
- package/examples/typescript/pie-variable-radius/package.json +1 -1
- package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
- package/examples/typescript/radar-heat-map/package.json +1 -1
- package/examples/typescript/radar-line/package.json +1 -1
- package/examples/typescript/radar-time-line/index.ts +1 -1
- package/examples/typescript/radar-time-line/package.json +1 -1
- package/examples/typescript/sliced-funnel/package.json +1 -1
- package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/typescript/sliced-pyramid/package.json +1 -1
- package/examples/typescript/stock-chart/package.json +1 -1
- package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
- package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
- package/examples/typescript/stock-chart-intraday/package.json +1 -1
- package/examples/typescript/stock-chart-live/package.json +1 -1
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/typescript/venn-diagram/package.json +1 -1
- package/examples/typescript/wordcloud-with-data/package.json +1 -1
- package/examples/typescript/wordcloud-with-text/package.json +1 -1
- package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/typescript/xy-bubble/index.ts +1 -1
- package/examples/typescript/xy-bubble/package.json +1 -1
- package/examples/typescript/xy-candlestick/package.json +1 -1
- package/examples/typescript/xy-clustered-column/package.json +1 -1
- package/examples/typescript/xy-column/package.json +1 -1
- package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/typescript/xy-data-grouping/package.json +1 -1
- package/examples/typescript/xy-draggable-range/package.json +1 -1
- package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/typescript/xy-dumbbell plot/package.json +1 -1
- package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/typescript/xy-line/package.json +1 -1
- package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/typescript/xy-live-data/package.json +1 -1
- package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/typescript/xy-ohlc/package.json +1 -1
- package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/typescript/xy-smoothed-line/package.json +1 -1
- package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/typescript/xy-stacked-column/package.json +1 -1
- package/examples/typescript/xy-stacked-step/package.json +1 -1
- package/examples/typescript/xy-stock/package.json +1 -1
- package/examples/typescript/xy-stock-comparing/package.json +1 -1
- package/package.json +1 -1
- package/stock.d.ts +1 -0
- package/stock.d.ts.map +1 -1
- package/stock.js +1 -0
- package/stock.js.map +1 -1
|
@@ -129,54 +129,54 @@ var PieSeries = /** @class */ (function (_super) {
|
|
|
129
129
|
if (innerRadius_1 < 0) {
|
|
130
130
|
innerRadius_1 = radius_1 + innerRadius_1;
|
|
131
131
|
}
|
|
132
|
-
if (
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
}
|
|
159
|
-
labelRadius *= -1;
|
|
160
|
-
labelRadius -= _this.labelsContainer.get("paddingLeft", 0);
|
|
161
|
-
label.set("centerX", p100);
|
|
162
|
-
label.setPrivateRaw("left", true);
|
|
132
|
+
//if (radius > 0) {
|
|
133
|
+
$array.each(this._dataItems, function (dataItem) {
|
|
134
|
+
_this.updateLegendValue(dataItem);
|
|
135
|
+
var currentArc = arc_1 * dataItem.get("valuePercentTotal") / 100;
|
|
136
|
+
var slice = dataItem.get("slice");
|
|
137
|
+
if (slice) {
|
|
138
|
+
slice.set("radius", radius_1);
|
|
139
|
+
slice.set("innerRadius", innerRadius_1);
|
|
140
|
+
slice.set("startAngle", currentAngle_1);
|
|
141
|
+
slice.set("arc", currentArc);
|
|
142
|
+
var color = dataItem.get("fill");
|
|
143
|
+
slice._setDefault("fill", color);
|
|
144
|
+
slice._setDefault("stroke", color);
|
|
145
|
+
}
|
|
146
|
+
var middleAngle = $math.normalizeAngle(currentAngle_1 + currentArc / 2);
|
|
147
|
+
var label = dataItem.get("label");
|
|
148
|
+
if (label) {
|
|
149
|
+
label.setPrivate("radius", radius_1);
|
|
150
|
+
label.setPrivate("innerRadius", innerRadius_1);
|
|
151
|
+
label.set("labelAngle", middleAngle);
|
|
152
|
+
if (label.get("textType") == "aligned") {
|
|
153
|
+
var labelRadius = radius_1 + label.get("radius", 0);
|
|
154
|
+
var y = radius_1 * $math.sin(middleAngle);
|
|
155
|
+
if (middleAngle > 90 && middleAngle <= 270) {
|
|
156
|
+
if (!label.isHidden() && !label.isHiding()) {
|
|
157
|
+
_this._lLabels.push({ label: label, y: y });
|
|
163
158
|
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
159
|
+
labelRadius *= -1;
|
|
160
|
+
labelRadius -= _this.labelsContainer.get("paddingLeft", 0);
|
|
161
|
+
label.set("centerX", p100);
|
|
162
|
+
label.setPrivateRaw("left", true);
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
if (!label.isHidden() && !label.isHiding()) {
|
|
166
|
+
_this._rLabels.push({ label: label, y: y });
|
|
171
167
|
}
|
|
172
|
-
|
|
173
|
-
label.set("
|
|
168
|
+
labelRadius += _this.labelsContainer.get("paddingRight", 0);
|
|
169
|
+
label.set("centerX", 0);
|
|
170
|
+
label.setPrivateRaw("left", false);
|
|
174
171
|
}
|
|
172
|
+
label.set("x", labelRadius);
|
|
173
|
+
label.set("y", radius_1 * $math.sin(middleAngle));
|
|
175
174
|
}
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
}
|
|
175
|
+
}
|
|
176
|
+
currentAngle_1 += currentArc;
|
|
177
|
+
_this._updateTick(dataItem);
|
|
178
|
+
});
|
|
179
|
+
//}
|
|
180
180
|
}
|
|
181
181
|
}
|
|
182
182
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PieSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { PieChart } from \"./PieChart\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { Slice } from \"../../core/render/Slice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { RadialLabel } from \"../../core/render/RadialLabel\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { p100, Percent } from \"../../core/util/Percent\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $math from \"../../core/util/Math\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IPieSeriesDataItem extends IPercentSeriesDataItem {\n\tslice: Slice;\n\tlabel: RadialLabel;\n}\n\nexport interface IPieSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t */\n\tradius?: Percent | number;\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t *\n\t * Setting to negative number will mean pixels from outer radius.\n\t */\n\tinnerRadius?: Percent | number;\n\n\t/**\n\t * Start angle of the series in degrees.\n\t *\n\t * @default -90\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * End angle of the series in degrees.\n\t *\n\t * @default 270\n\t */\n\tendAngle?: number;\n\n}\n\nexport interface IPieSeriesPrivate extends IPercentSeriesPrivate {\n\n\t/**\n\t * Actual radius of the series in pixels.\n\t */\n\tradius?: number;\n\n}\n\n/**\n * Creates a series for a [[PieChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class PieSeries extends PercentSeries {\n\n\tdeclare public chart: PieChart | undefined;\n\n\tpublic static className: string = \"PieSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([PieSeries.className]);\n\n\tdeclare public _settings: IPieSeriesSettings;\n\tdeclare public _privateSettings: IPieSeriesPrivate;\n\tdeclare public _dataItemSettings: IPieSeriesDataItem;\n\n\tdeclare public _sliceType: Slice;\n\tdeclare public _labelType: RadialLabel;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Slice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => RadialLabel._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.ticks.template]),\n\t\t);\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice.on(\"scale\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.on(\"shiftRadius\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\t}\n\n\tprotected _getNextUp() {\n\t\treturn this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tprotected _getNextDown() {\n\t\treturn -this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\n\t\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\t\tlet labelsTemplate = this.labels.template;\n\n\t\t\t\tif (this.get(\"alignLabels\")) {\n\t\t\t\t\tlabelsTemplate.set(\"textType\", \"aligned\");\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlet textType = labelsTemplate.get(\"textType\");\n\t\t\t\t\tif (textType == null || textType == \"aligned\") {\n\t\t\t\t\t\tlabelsTemplate.set(\"textType\", \"adjusted\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tif (this._valuesDirty || this.isDirty(\"radius\") || this.isDirty(\"innerRadius\") || this.isDirty(\"startAngle\") || this.isDirty(\"endAngle\") || this.isDirty(\"alignLabels\")) {\n\t\t\t\tthis.markDirtyBounds();\n\t\t\t\tconst startAngle = this.get(\"startAngle\", chart.get(\"startAngle\", -90));\n\t\t\t\tconst endAngle = this.get(\"endAngle\", chart.get(\"endAngle\", 270));\n\t\t\t\tconst arc = endAngle - startAngle;\n\t\t\t\tlet currentAngle = startAngle;\n\n\t\t\t\tconst radius = chart.radius(this);\n\t\t\t\tthis.setPrivateRaw(\"radius\", radius);\n\t\t\t\tlet innerRadius = chart.innerRadius(this) * chart.getPrivate(\"irModifyer\", 1);\n\n\t\t\t\tif (innerRadius < 0) {\n\t\t\t\t\tinnerRadius = radius + innerRadius;\n\t\t\t\t}\n\n\t\t\t\tif (radius > 0) {\n\t\t\t\t\t$array.each(this._dataItems, (dataItem) => {\n\n\t\t\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\t\t\tlet currentArc = arc * dataItem.get(\"valuePercentTotal\") / 100;\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tif (slice) {\n\t\t\t\t\t\t\tslice.set(\"radius\", radius);\n\t\t\t\t\t\t\tslice.set(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tslice.set(\"startAngle\", currentAngle);\n\n\t\t\t\t\t\t\tslice.set(\"arc\", currentArc);\n\n\t\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet middleAngle = $math.normalizeAngle(currentAngle + currentArc / 2);\n\n\t\t\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\t\t\tif (label) {\n\t\t\t\t\t\t\tlabel.setPrivate(\"radius\", radius);\n\t\t\t\t\t\t\tlabel.setPrivate(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tlabel.set(\"labelAngle\", middleAngle);\n\n\t\t\t\t\t\t\tif (label.get(\"textType\") == \"aligned\") {\n\t\t\t\t\t\t\t\tlet labelRadius = radius + label.get(\"radius\", 0);\n\t\t\t\t\t\t\t\tlet y = radius * $math.sin(middleAngle);\n\n\t\t\t\t\t\t\t\tif (middleAngle > 90 && middleAngle <= 270) {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._lLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius *= -1;\n\t\t\t\t\t\t\t\t\tlabelRadius -= this.labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", p100);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", true);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._rLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius += this.labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", 0);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", false);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlabel.set(\"x\", labelRadius);\n\t\t\t\t\t\t\t\tlabel.set(\"y\", radius * $math.sin(middleAngle));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcurrentAngle += currentArc;\n\t\t\t\t\t\tthis._updateTick(dataItem);\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst location = tick.get(\"location\", 1);\n\t\tif (tick && label && slice) {\n\t\t\tconst radius = (slice.get(\"shiftRadius\", 0) + slice.get(\"radius\", 0)) * slice.get(\"scale\", 1) * location;\n\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\tconst cos = $math.cos(labelAngle);\n\t\t\tconst sin = $math.sin(labelAngle);\n\n\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\n\t\t\tlet x = 0;\n\t\t\tlet y = 0;\n\n\t\t\tx = label.x();\n\t\t\ty = label.y();\n\n\t\t\tif (label.get(\"textType\") == \"circular\") {\n\t\t\t\tconst labelRadius = label.radius() - label.get(\"paddingBottom\", 0);\n\t\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\t\tx = labelRadius * $math.cos(labelAngle);\n\t\t\t\ty = labelRadius * $math.sin(labelAngle);\n\t\t\t}\n\n\t\t\tlet dx = -pr;\n\t\t\tif (label.getPrivate(\"left\")) {\n\t\t\t\tdx = pl;\n\t\t\t}\n\n\t\t\ttick.set(\"points\", [{ x: slice.x() + radius * cos, y: slice.y() + radius * sin }, { x: x + dx, y: y }, { x: x, y: y }]);\n\t\t}\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\n\t\tconst sprite = bullet.get(\"sprite\");\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (slice) {\n\t\t\t\tconst innerRadius = slice.get(\"innerRadius\", 0);\n\t\t\t\tconst radius = slice.get(\"radius\", 0);\n\t\t\t\tconst startAngle = slice.get(\"startAngle\", 0);\n\t\t\t\tconst arc = slice.get(\"arc\", 0);\n\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\n\t\t\t\tconst angle = startAngle + arc * locationX;\n\t\t\t\tconst r = innerRadius + (radius - innerRadius) * locationY;\n\n\t\t\t\tsprite.setAll({ x: $math.cos(angle) * r, y: $math.sin(angle) * r });\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"PieSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { PieChart } from \"./PieChart\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { Slice } from \"../../core/render/Slice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { RadialLabel } from \"../../core/render/RadialLabel\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { p100, Percent } from \"../../core/util/Percent\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $math from \"../../core/util/Math\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IPieSeriesDataItem extends IPercentSeriesDataItem {\n\tslice: Slice;\n\tlabel: RadialLabel;\n}\n\nexport interface IPieSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t */\n\tradius?: Percent | number;\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t *\n\t * Setting to negative number will mean pixels from outer radius.\n\t */\n\tinnerRadius?: Percent | number;\n\n\t/**\n\t * Start angle of the series in degrees.\n\t *\n\t * @default -90\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * End angle of the series in degrees.\n\t *\n\t * @default 270\n\t */\n\tendAngle?: number;\n\n}\n\nexport interface IPieSeriesPrivate extends IPercentSeriesPrivate {\n\n\t/**\n\t * Actual radius of the series in pixels.\n\t */\n\tradius?: number;\n\n}\n\n/**\n * Creates a series for a [[PieChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class PieSeries extends PercentSeries {\n\n\tdeclare public chart: PieChart | undefined;\n\n\tpublic static className: string = \"PieSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([PieSeries.className]);\n\n\tdeclare public _settings: IPieSeriesSettings;\n\tdeclare public _privateSettings: IPieSeriesPrivate;\n\tdeclare public _dataItemSettings: IPieSeriesDataItem;\n\n\tdeclare public _sliceType: Slice;\n\tdeclare public _labelType: RadialLabel;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Slice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => RadialLabel._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.ticks.template]),\n\t\t);\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice.on(\"scale\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.on(\"shiftRadius\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\t}\n\n\tprotected _getNextUp() {\n\t\treturn this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tprotected _getNextDown() {\n\t\treturn -this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\n\t\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\t\tlet labelsTemplate = this.labels.template;\n\n\t\t\t\tif (this.get(\"alignLabels\")) {\n\t\t\t\t\tlabelsTemplate.set(\"textType\", \"aligned\");\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlet textType = labelsTemplate.get(\"textType\");\n\t\t\t\t\tif (textType == null || textType == \"aligned\") {\n\t\t\t\t\t\tlabelsTemplate.set(\"textType\", \"adjusted\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tif (this._valuesDirty || this.isDirty(\"radius\") || this.isDirty(\"innerRadius\") || this.isDirty(\"startAngle\") || this.isDirty(\"endAngle\") || this.isDirty(\"alignLabels\")) {\n\t\t\t\tthis.markDirtyBounds();\n\t\t\t\tconst startAngle = this.get(\"startAngle\", chart.get(\"startAngle\", -90));\n\t\t\t\tconst endAngle = this.get(\"endAngle\", chart.get(\"endAngle\", 270));\n\t\t\t\tconst arc = endAngle - startAngle;\n\t\t\t\tlet currentAngle = startAngle;\n\n\t\t\t\tconst radius = chart.radius(this);\n\t\t\t\tthis.setPrivateRaw(\"radius\", radius);\n\t\t\t\tlet innerRadius = chart.innerRadius(this) * chart.getPrivate(\"irModifyer\", 1);\n\n\t\t\t\tif (innerRadius < 0) {\n\t\t\t\t\tinnerRadius = radius + innerRadius;\n\t\t\t\t}\n\n\t\t\t\t//if (radius > 0) {\n\t\t\t\t\t$array.each(this._dataItems, (dataItem) => {\n\n\t\t\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\t\t\tlet currentArc = arc * dataItem.get(\"valuePercentTotal\") / 100;\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tif (slice) {\n\t\t\t\t\t\t\tslice.set(\"radius\", radius);\n\t\t\t\t\t\t\tslice.set(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tslice.set(\"startAngle\", currentAngle);\n\n\t\t\t\t\t\t\tslice.set(\"arc\", currentArc);\n\n\t\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet middleAngle = $math.normalizeAngle(currentAngle + currentArc / 2);\n\n\t\t\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\t\t\tif (label) {\n\t\t\t\t\t\t\tlabel.setPrivate(\"radius\", radius);\n\t\t\t\t\t\t\tlabel.setPrivate(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tlabel.set(\"labelAngle\", middleAngle);\n\n\t\t\t\t\t\t\tif (label.get(\"textType\") == \"aligned\") {\n\t\t\t\t\t\t\t\tlet labelRadius = radius + label.get(\"radius\", 0);\n\t\t\t\t\t\t\t\tlet y = radius * $math.sin(middleAngle);\n\n\t\t\t\t\t\t\t\tif (middleAngle > 90 && middleAngle <= 270) {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._lLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius *= -1;\n\t\t\t\t\t\t\t\t\tlabelRadius -= this.labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", p100);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", true);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._rLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius += this.labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", 0);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", false);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlabel.set(\"x\", labelRadius);\n\t\t\t\t\t\t\t\tlabel.set(\"y\", radius * $math.sin(middleAngle));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcurrentAngle += currentArc;\n\t\t\t\t\t\tthis._updateTick(dataItem);\n\t\t\t\t\t})\n\t\t\t\t//}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst location = tick.get(\"location\", 1);\n\t\tif (tick && label && slice) {\n\t\t\tconst radius = (slice.get(\"shiftRadius\", 0) + slice.get(\"radius\", 0)) * slice.get(\"scale\", 1) * location;\n\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\tconst cos = $math.cos(labelAngle);\n\t\t\tconst sin = $math.sin(labelAngle);\n\n\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\n\t\t\tlet x = 0;\n\t\t\tlet y = 0;\n\n\t\t\tx = label.x();\n\t\t\ty = label.y();\n\n\t\t\tif (label.get(\"textType\") == \"circular\") {\n\t\t\t\tconst labelRadius = label.radius() - label.get(\"paddingBottom\", 0);\n\t\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\t\tx = labelRadius * $math.cos(labelAngle);\n\t\t\t\ty = labelRadius * $math.sin(labelAngle);\n\t\t\t}\n\n\t\t\tlet dx = -pr;\n\t\t\tif (label.getPrivate(\"left\")) {\n\t\t\t\tdx = pl;\n\t\t\t}\n\n\t\t\ttick.set(\"points\", [{ x: slice.x() + radius * cos, y: slice.y() + radius * sin }, { x: x + dx, y: y }, { x: x, y: y }]);\n\t\t}\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\n\t\tconst sprite = bullet.get(\"sprite\");\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (slice) {\n\t\t\t\tconst innerRadius = slice.get(\"innerRadius\", 0);\n\t\t\t\tconst radius = slice.get(\"radius\", 0);\n\t\t\t\tconst startAngle = slice.get(\"startAngle\", 0);\n\t\t\t\tconst arc = slice.get(\"arc\", 0);\n\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\n\t\t\t\tconst angle = startAngle + arc * locationX;\n\t\t\t\tconst r = innerRadius + (radius - innerRadius) * locationY;\n\n\t\t\t\tsprite.setAll({ x: $math.cos(angle) * r, y: $math.sin(angle) * r });\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StockChartDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/StockChartDefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AASzC;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAChD,SAAS,CAAC,iBAAiB;
|
|
1
|
+
{"version":3,"file":"StockChartDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/StockChartDefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AASzC;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAChD,SAAS,CAAC,iBAAiB;CA03C3B"}
|
|
@@ -56,7 +56,8 @@ var StockChartDefaultTheme = /** @class */ (function (_super) {
|
|
|
56
56
|
paddingRight: 0,
|
|
57
57
|
paddingBottom: 0,
|
|
58
58
|
paddingTop: 15,
|
|
59
|
-
minHeight: 80
|
|
59
|
+
minHeight: 80,
|
|
60
|
+
wheelZoomPositionX: 1
|
|
60
61
|
});
|
|
61
62
|
r("XYChart", ["stock", "scrollbar"]).setAll({
|
|
62
63
|
minHeight: 0
|
|
@@ -666,6 +667,10 @@ var StockChartDefaultTheme = /** @class */ (function (_super) {
|
|
|
666
667
|
legendValueText: "[{lowerColor} bold]{lower.formatNumber('#.000a')}[/] [{seriesColor} bold]{valueY.formatNumber('#.000a')}[/] [{upperColor} bold]{upper.formatNumber('#.000a')}[/]",
|
|
667
668
|
legendLabelText: "{shortName} ({period},{field},{shiftType},{shift},{type})"
|
|
668
669
|
});
|
|
670
|
+
r("LineSeries", ["vwap"]).setAll({
|
|
671
|
+
legendValueText: "[{seriesColor} bold]{valueY.formatNumber('#.000a')}[/]",
|
|
672
|
+
legendLabelText: "{shortName} ({period},{field})"
|
|
673
|
+
});
|
|
669
674
|
r("LineSeries", ["accumulationdistribution"]).setAll({
|
|
670
675
|
legendValueText: "[{seriesColor} bold]{valueY.formatNumber('#.000a')}[/]",
|
|
671
676
|
legendLabelText: "{shortName} ({useVolume})"
|
|
@@ -794,6 +799,13 @@ var StockChartDefaultTheme = /** @class */ (function (_super) {
|
|
|
794
799
|
field: "close",
|
|
795
800
|
period: 20
|
|
796
801
|
});
|
|
802
|
+
r("VWAP").setAll({
|
|
803
|
+
name: "Volume-Weighted Average Price",
|
|
804
|
+
shortName: "VWAP",
|
|
805
|
+
seriesColor: color(0xab82da),
|
|
806
|
+
field: "hlc/3",
|
|
807
|
+
period: 30
|
|
808
|
+
});
|
|
797
809
|
r("AccumulationDistribution").setAll({
|
|
798
810
|
name: "Accumulation/Distribution",
|
|
799
811
|
shortName: "Accum/Dist",
|
|
@@ -929,7 +941,7 @@ var StockChartDefaultTheme = /** @class */ (function (_super) {
|
|
|
929
941
|
});
|
|
930
942
|
r("IndicatorControl").setAll({
|
|
931
943
|
name: l.translateAny("Indicators"),
|
|
932
|
-
indicators: ["Aroon", "Accumulation Distribution", "Accumulative Swing Index", "Awesome Oscillator", "Bollinger Bands", "Chaikin Money Flow", "Chaikin Oscillator", "Commodity Channel Index", "Disparity Index", "MACD", "Moving Average", "Moving Average Deviation", "Moving Average Envelope", "On Balance Volume", "Relative Strength Index", "Stochastic Oscillator", "Volume", "Williams R"]
|
|
944
|
+
indicators: ["Aroon", "Accumulation Distribution", "Accumulative Swing Index", "Awesome Oscillator", "Bollinger Bands", "Chaikin Money Flow", "Chaikin Oscillator", "Commodity Channel Index", "Disparity Index", "MACD", "Moving Average", "Moving Average Deviation", "Moving Average Envelope", "On Balance Volume", "Relative Strength Index", "Stochastic Oscillator", "Volume", "VWAP", "Williams R"]
|
|
933
945
|
});
|
|
934
946
|
r("ComparisonControl").setAll({
|
|
935
947
|
name: l.translateAny("Comparison")
|