@nstudio/ncharts 1.0.3 → 1.1.0
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/angular/fesm2022/nstudio-ncharts-angular.mjs +14 -280
- package/angular/fesm2022/nstudio-ncharts-angular.mjs.map +1 -1
- package/angular/types/nstudio-ncharts-angular.d.ts +8 -36
- package/charts/bar-chart.android.d.ts +12 -1
- package/charts/bar-chart.android.js +123 -16
- package/charts/bar-chart.android.js.map +1 -1
- package/charts/bar-chart.ios.d.ts +12 -1
- package/charts/bar-chart.ios.js +122 -26
- package/charts/bar-chart.ios.js.map +1 -1
- package/charts/bubble-chart.android.d.ts +3 -1
- package/charts/bubble-chart.android.js +11 -3
- package/charts/bubble-chart.android.js.map +1 -1
- package/charts/bubble-chart.ios.d.ts +3 -1
- package/charts/bubble-chart.ios.js +21 -15
- package/charts/bubble-chart.ios.js.map +1 -1
- package/charts/candlestick-chart.android.d.ts +3 -1
- package/charts/candlestick-chart.android.js +11 -3
- package/charts/candlestick-chart.android.js.map +1 -1
- package/charts/candlestick-chart.ios.d.ts +3 -1
- package/charts/candlestick-chart.ios.js +21 -15
- package/charts/candlestick-chart.ios.js.map +1 -1
- package/charts/chart-paging-detector/chart-paging-detector-base.d.ts +30 -0
- package/charts/chart-paging-detector/chart-paging-detector-base.js +115 -0
- package/charts/chart-paging-detector/chart-paging-detector-base.js.map +1 -0
- package/charts/chart-paging-detector/chart-paging-detector.android.d.ts +28 -0
- package/charts/chart-paging-detector/chart-paging-detector.android.js +136 -0
- package/charts/chart-paging-detector/chart-paging-detector.android.js.map +1 -0
- package/charts/chart-paging-detector/chart-paging-detector.ios.d.ts +34 -0
- package/charts/chart-paging-detector/chart-paging-detector.ios.js +88 -0
- package/charts/chart-paging-detector/chart-paging-detector.ios.js.map +1 -0
- package/charts/combined-chart.android.d.ts +13 -1
- package/charts/combined-chart.android.js +163 -13
- package/charts/combined-chart.android.js.map +1 -1
- package/charts/combined-chart.ios.d.ts +13 -1
- package/charts/combined-chart.ios.js +222 -72
- package/charts/combined-chart.ios.js.map +1 -1
- package/charts/default-marker.android.d.ts +29 -0
- package/charts/default-marker.android.js +133 -0
- package/charts/default-marker.android.js.map +1 -0
- package/charts/default-marker.ios.d.ts +21 -0
- package/charts/default-marker.ios.js +119 -0
- package/charts/default-marker.ios.js.map +1 -0
- package/charts/formatters/custom-labels-array-formatter.android.d.ts +7 -0
- package/charts/formatters/custom-labels-array-formatter.android.js +26 -0
- package/charts/formatters/custom-labels-array-formatter.android.js.map +1 -0
- package/charts/formatters/custom-labels-array-formatter.ios.d.ts +16 -0
- package/charts/formatters/custom-labels-array-formatter.ios.js +53 -0
- package/charts/formatters/custom-labels-array-formatter.ios.js.map +1 -0
- package/charts/formatters/date-formatters.android.d.ts +34 -0
- package/charts/formatters/date-formatters.android.js +74 -0
- package/charts/formatters/date-formatters.android.js.map +1 -0
- package/charts/formatters/date-formatters.ios.d.ts +33 -0
- package/charts/formatters/date-formatters.ios.js +75 -0
- package/charts/formatters/date-formatters.ios.js.map +1 -0
- package/charts/formatters/decimal-value-formatter.android.d.ts +13 -0
- package/charts/formatters/decimal-value-formatter.android.js +64 -0
- package/charts/formatters/decimal-value-formatter.android.js.map +1 -0
- package/charts/formatters/suffix-value-formatter.android.d.ts +13 -0
- package/charts/formatters/suffix-value-formatter.android.js +78 -0
- package/charts/formatters/suffix-value-formatter.android.js.map +1 -0
- package/charts/formatters/suffix-value-formatter.ios.d.ts +15 -0
- package/charts/formatters/suffix-value-formatter.ios.js +76 -0
- package/charts/formatters/suffix-value-formatter.ios.js.map +1 -0
- package/charts/formatters/value-formatter-helpers.d.ts +1 -0
- package/charts/formatters/value-formatter-helpers.js +29 -0
- package/charts/formatters/value-formatter-helpers.js.map +1 -0
- package/charts/line-chart.android.d.ts +12 -1
- package/charts/line-chart.android.js +121 -11
- package/charts/line-chart.android.js.map +1 -1
- package/charts/line-chart.ios.d.ts +12 -1
- package/charts/line-chart.ios.js +120 -21
- package/charts/line-chart.ios.js.map +1 -1
- package/charts/pie-chart.android.d.ts +23 -4
- package/charts/pie-chart.android.js +166 -55
- package/charts/pie-chart.android.js.map +1 -1
- package/charts/pie-chart.ios.d.ts +23 -4
- package/charts/pie-chart.ios.js +182 -90
- package/charts/pie-chart.ios.js.map +1 -1
- package/charts/radar-chart.android.d.ts +4 -1
- package/charts/radar-chart.android.js +16 -3
- package/charts/radar-chart.android.js.map +1 -1
- package/charts/radar-chart.ios.d.ts +4 -1
- package/charts/radar-chart.ios.js +27 -15
- package/charts/radar-chart.ios.js.map +1 -1
- package/charts/renderers/bar-chart-renderer.android.d.ts +19 -0
- package/charts/renderers/bar-chart-renderer.android.js +118 -0
- package/charts/renderers/bar-chart-renderer.android.js.map +1 -0
- package/charts/renderers/bar-chart-renderer.ios.d.ts +48 -0
- package/charts/renderers/bar-chart-renderer.ios.js +152 -0
- package/charts/renderers/bar-chart-renderer.ios.js.map +1 -0
- package/charts/renderers/combined-chart-renderer.android.d.ts +13 -0
- package/charts/renderers/combined-chart-renderer.android.js +57 -0
- package/charts/renderers/combined-chart-renderer.android.js.map +1 -0
- package/charts/renderers/combined-chart-renderer.ios.d.ts +12 -0
- package/charts/renderers/combined-chart-renderer.ios.js +66 -0
- package/charts/renderers/combined-chart-renderer.ios.js.map +1 -0
- package/charts/renderers/line-chart-plotbands-renderer.android.d.ts +13 -0
- package/charts/renderers/line-chart-plotbands-renderer.android.js +37 -0
- package/charts/renderers/line-chart-plotbands-renderer.android.js.map +1 -0
- package/charts/renderers/line-chart-plotbands-renderer.ios.d.ts +10 -0
- package/charts/renderers/line-chart-plotbands-renderer.ios.js +34 -0
- package/charts/renderers/line-chart-plotbands-renderer.ios.js.map +1 -0
- package/charts/renderers/plotband-drawer.android.d.ts +33 -0
- package/charts/renderers/plotband-drawer.android.js +200 -0
- package/charts/renderers/plotband-drawer.android.js.map +1 -0
- package/charts/renderers/plotband-drawer.ios.d.ts +15 -0
- package/charts/renderers/plotband-drawer.ios.js +183 -0
- package/charts/renderers/plotband-drawer.ios.js.map +1 -0
- package/charts/scatter-chart.android.d.ts +3 -1
- package/charts/scatter-chart.android.js +11 -3
- package/charts/scatter-chart.android.js.map +1 -1
- package/charts/scatter-chart.ios.d.ts +3 -1
- package/charts/scatter-chart.ios.js +21 -15
- package/charts/scatter-chart.ios.js.map +1 -1
- package/charts/style-helpers.android.d.ts +7 -5
- package/charts/style-helpers.android.js +125 -5
- package/charts/style-helpers.android.js.map +1 -1
- package/charts/style-helpers.ios.d.ts +7 -5
- package/charts/style-helpers.ios.js +138 -5
- package/charts/style-helpers.ios.js.map +1 -1
- package/common.d.ts +56 -2
- package/common.js +181 -14
- package/common.js.map +1 -1
- package/package.json +2 -2
- package/types/android!MPAndroidChart.d.ts +7955 -0
- package/types/objc!DGCharts.d.ts +5265 -0
- package/types.d.ts +67 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* RadarChart - iOS Implementation
|
|
3
3
|
*/
|
|
4
|
-
import { RadarChartBase, nchartsLog } from '../common';
|
|
4
|
+
import { RadarChartBase, nchartsLog, extraOffsetsProperty, rotationEnabledProperty } from '../common';
|
|
5
5
|
import { toUIColor, parseEasingIOS } from './utils';
|
|
6
6
|
import { applyNoDataTextColorIOS, applyLegendIOS, applyXAxisIOS, applyYAxisIOS, applyDescriptionIOS } from './style-helpers.ios';
|
|
7
7
|
var RadarChartViewDelegateImpl = (function (_super) {
|
|
@@ -41,22 +41,19 @@ var RadarChartViewDelegateImpl = (function (_super) {
|
|
|
41
41
|
function applyRadarDataSetConfig(dataSet, config) {
|
|
42
42
|
if (!dataSet || !config)
|
|
43
43
|
return;
|
|
44
|
-
if (config.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
dataSet.setColor(color);
|
|
48
|
-
}
|
|
49
|
-
if (config.colors) {
|
|
50
|
-
const colors = [];
|
|
51
|
-
config.colors.forEach((c) => {
|
|
44
|
+
if (config.colors?.length) {
|
|
45
|
+
dataSet.resetColors();
|
|
46
|
+
for (const c of config.colors) {
|
|
52
47
|
const color = toUIColor(c);
|
|
53
48
|
if (color)
|
|
54
|
-
|
|
55
|
-
});
|
|
56
|
-
for (const c of colors) {
|
|
57
|
-
dataSet.addColor(c);
|
|
49
|
+
dataSet.addColor(color);
|
|
58
50
|
}
|
|
59
51
|
}
|
|
52
|
+
else if (config.color) {
|
|
53
|
+
const color = toUIColor(config.color);
|
|
54
|
+
if (color)
|
|
55
|
+
dataSet.setColor(color);
|
|
56
|
+
}
|
|
60
57
|
if (config.highlightEnabled !== undefined)
|
|
61
58
|
dataSet.highlightEnabled = config.highlightEnabled;
|
|
62
59
|
if (config.drawValues !== undefined)
|
|
@@ -89,6 +86,7 @@ export class RadarChart extends RadarChartBase {
|
|
|
89
86
|
super(...arguments);
|
|
90
87
|
this._native = null;
|
|
91
88
|
this._delegate = null;
|
|
89
|
+
this._retainedChartObjects = [];
|
|
92
90
|
}
|
|
93
91
|
createNativeView() {
|
|
94
92
|
nchartsLog('[ncharts] RadarChart.createNativeView()');
|
|
@@ -122,7 +120,7 @@ export class RadarChart extends RadarChartBase {
|
|
|
122
120
|
if (this.xAxis)
|
|
123
121
|
this._applyXAxis(this.xAxis);
|
|
124
122
|
if (this.yAxis)
|
|
125
|
-
applyYAxisIOS(instance.yAxis, this.yAxis);
|
|
123
|
+
applyYAxisIOS(instance.yAxis, this._retainedChartObjects, this.yAxis);
|
|
126
124
|
if (this.chartDescription)
|
|
127
125
|
this._applyDescription(this.chartDescription);
|
|
128
126
|
this._applyRadarChartConfig();
|
|
@@ -143,6 +141,7 @@ export class RadarChart extends RadarChartBase {
|
|
|
143
141
|
instance.rotationAngle = this.rotationAngle;
|
|
144
142
|
}
|
|
145
143
|
disposeNativeView() {
|
|
144
|
+
this._retainedChartObjects.length = 0;
|
|
146
145
|
this._delegate = null;
|
|
147
146
|
this._native = null;
|
|
148
147
|
this._nativeChart = null;
|
|
@@ -247,11 +246,24 @@ export class RadarChart extends RadarChartBase {
|
|
|
247
246
|
applyLegendIOS(this._native, legend);
|
|
248
247
|
}
|
|
249
248
|
_applyXAxis(xAxis) {
|
|
250
|
-
applyXAxisIOS(this._native, xAxis);
|
|
249
|
+
applyXAxisIOS(this._native, xAxis, this._retainedChartObjects);
|
|
251
250
|
}
|
|
252
251
|
_applyDescription(description) {
|
|
253
252
|
applyDescriptionIOS(this._native, description);
|
|
254
253
|
}
|
|
255
254
|
_applyMarker(marker) { }
|
|
255
|
+
[extraOffsetsProperty.setNative](value) {
|
|
256
|
+
if (this._native && value) {
|
|
257
|
+
this._native.setExtraOffsetsWithLeftTopRightBottom(value.left, value.top, value.right, value.bottom);
|
|
258
|
+
this._native.notifyDataSetChanged();
|
|
259
|
+
this._native.setNeedsDisplay();
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
[rotationEnabledProperty.setNative](value) {
|
|
263
|
+
if (!this._native)
|
|
264
|
+
return;
|
|
265
|
+
this._native.rotationEnabled = value;
|
|
266
|
+
this._native.setNeedsDisplay();
|
|
267
|
+
}
|
|
256
268
|
}
|
|
257
269
|
//# sourceMappingURL=radar-chart.ios.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radar-chart.ios.js","sourceRoot":"","sources":["../../../../packages/ncharts/charts/radar-chart.ios.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAA4G,UAAU,
|
|
1
|
+
{"version":3,"file":"radar-chart.ios.js","sourceRoot":"","sources":["../../../../packages/ncharts/charts/radar-chart.ios.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BarDataSetConfig } from '../../common';
|
|
2
|
+
export declare class NSBarChartRenderer extends com.github.mikephil.charting.renderer.BarChartRenderer {
|
|
3
|
+
private _configs?;
|
|
4
|
+
private _prevRenderer;
|
|
5
|
+
private _valuePaint;
|
|
6
|
+
private _chart;
|
|
7
|
+
constructor(chart: any, animator: any, viewPortHandler: any, configs?: BarDataSetConfig[]);
|
|
8
|
+
/**
|
|
9
|
+
* Factory to initialize the renderer and swap it in the native chart.
|
|
10
|
+
*/
|
|
11
|
+
static create(chartView: any, configs?: BarDataSetConfig[]): NSBarChartRenderer;
|
|
12
|
+
/**
|
|
13
|
+
* Restores the chart to its original renderer state.
|
|
14
|
+
*/
|
|
15
|
+
detach(): void;
|
|
16
|
+
drawValues(c: android.graphics.Canvas): void;
|
|
17
|
+
private _drawTextInBufferRect;
|
|
18
|
+
private _applyValueTextStyle;
|
|
19
|
+
}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { Utils } from '@nativescript/core';
|
|
2
|
+
var NSBarChartRenderer = (function (_super) {
|
|
3
|
+
__extends(NSBarChartRenderer, _super);
|
|
4
|
+
function NSBarChartRenderer(chart, animator, viewPortHandler, configs) {
|
|
5
|
+
var _this = _super.call(this, chart, animator, viewPortHandler) || this;
|
|
6
|
+
_this._chart = chart;
|
|
7
|
+
_this._configs = configs;
|
|
8
|
+
_this._valuePaint = new android.graphics.Paint(android.graphics.Paint.ANTI_ALIAS_FLAG);
|
|
9
|
+
_this._valuePaint.setTextAlign(android.graphics.Paint.Align.CENTER);
|
|
10
|
+
return _this;
|
|
11
|
+
}
|
|
12
|
+
NSBarChartRenderer.create = function (chartView, configs) {
|
|
13
|
+
var chart = chartView;
|
|
14
|
+
var context = chart.getContext();
|
|
15
|
+
com.github.mikephil.charting.utils.Utils.init(context);
|
|
16
|
+
var r = new NSBarChartRenderer(chart, chart.getAnimator(), chart.getViewPortHandler(), configs);
|
|
17
|
+
r._prevRenderer = chart.getRenderer();
|
|
18
|
+
chart.setRenderer(r);
|
|
19
|
+
chart.invalidate();
|
|
20
|
+
return r;
|
|
21
|
+
};
|
|
22
|
+
NSBarChartRenderer.prototype.detach = function () {
|
|
23
|
+
if (this._chart && this._prevRenderer) {
|
|
24
|
+
this._chart.setRenderer(this._prevRenderer);
|
|
25
|
+
this._prevRenderer = null;
|
|
26
|
+
this._chart.invalidate();
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
NSBarChartRenderer.prototype.drawValues = function (c) {
|
|
30
|
+
var _a, _b;
|
|
31
|
+
var data = this.mChart.getBarData();
|
|
32
|
+
if (!data)
|
|
33
|
+
return;
|
|
34
|
+
var dataSets = data.getDataSets();
|
|
35
|
+
var count = dataSets.size();
|
|
36
|
+
var originalStates = new Array(count);
|
|
37
|
+
var hasInsideValues = false;
|
|
38
|
+
for (var i = 0; i < count; i++) {
|
|
39
|
+
var set = dataSets.get(i);
|
|
40
|
+
var cfg = (_a = this._configs) === null || _a === void 0 ? void 0 : _a[i];
|
|
41
|
+
originalStates[i] = set.isDrawValuesEnabled();
|
|
42
|
+
if (originalStates[i] && (cfg === null || cfg === void 0 ? void 0 : cfg.drawValuesInside)) {
|
|
43
|
+
set.setDrawValues(false);
|
|
44
|
+
hasInsideValues = true;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
_super.prototype.drawValues.call(this, c);
|
|
48
|
+
for (var i = 0; i < count; i++) {
|
|
49
|
+
dataSets.get(i).setDrawValues(originalStates[i]);
|
|
50
|
+
}
|
|
51
|
+
if (!hasInsideValues)
|
|
52
|
+
return;
|
|
53
|
+
for (var i = 0; i < count; i++) {
|
|
54
|
+
var set = dataSets.get(i);
|
|
55
|
+
var cfg = (_b = this._configs) === null || _b === void 0 ? void 0 : _b[i];
|
|
56
|
+
if (!(cfg === null || cfg === void 0 ? void 0 : cfg.drawValuesInside) || !set.isVisible() || !set.isDrawValuesEnabled())
|
|
57
|
+
continue;
|
|
58
|
+
this._applyValueTextStyle(set, cfg);
|
|
59
|
+
var barBuffer = this.mBarBuffers[i];
|
|
60
|
+
var floatArray = barBuffer.buffer;
|
|
61
|
+
var bufferIndex = 0;
|
|
62
|
+
for (var j = 0; j < set.getEntryCount(); j++) {
|
|
63
|
+
var entry = set.getEntryForIndex(j);
|
|
64
|
+
if (!entry)
|
|
65
|
+
continue;
|
|
66
|
+
var vals = entry.getYVals();
|
|
67
|
+
if (vals !== null && vals.length > 0) {
|
|
68
|
+
for (var k = 0; k < vals.length; k++) {
|
|
69
|
+
this._drawTextInBufferRect(c, floatArray, bufferIndex, set, vals[k], k);
|
|
70
|
+
bufferIndex += 4;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
this._drawTextInBufferRect(c, floatArray, bufferIndex, set, entry.getY(), j);
|
|
75
|
+
bufferIndex += 4;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
NSBarChartRenderer.prototype._drawTextInBufferRect = function (c, floatArray, index, set, val, colorIdx) {
|
|
81
|
+
var left = floatArray[index];
|
|
82
|
+
var top = floatArray[index + 1];
|
|
83
|
+
var right = floatArray[index + 2];
|
|
84
|
+
var bottom = floatArray[index + 3];
|
|
85
|
+
var width = right - left;
|
|
86
|
+
var height = bottom - top;
|
|
87
|
+
var formatter = set.getValueFormatter();
|
|
88
|
+
var text = formatter.getFormattedValue(val, null, 0, this.mViewPortHandler);
|
|
89
|
+
if (!text)
|
|
90
|
+
return;
|
|
91
|
+
this._valuePaint.setColor(set.getValueTextColor(colorIdx));
|
|
92
|
+
var textBounds = new android.graphics.Rect();
|
|
93
|
+
this._valuePaint.getTextBounds(text, 0, text.length, textBounds);
|
|
94
|
+
if (width < textBounds.width() || Math.abs(height) < textBounds.height())
|
|
95
|
+
return;
|
|
96
|
+
var centerX = left + width / 2;
|
|
97
|
+
var centerY = top + height / 2;
|
|
98
|
+
var drawY = centerY + textBounds.height() / 2 - textBounds.bottom;
|
|
99
|
+
c.drawText(text, centerX, drawY, this._valuePaint);
|
|
100
|
+
};
|
|
101
|
+
NSBarChartRenderer.prototype._applyValueTextStyle = function (set, cfg) {
|
|
102
|
+
var tf = set.getValueTypeface();
|
|
103
|
+
if (tf)
|
|
104
|
+
this._valuePaint.setTypeface(tf);
|
|
105
|
+
var size;
|
|
106
|
+
if (cfg === null || cfg === void 0 ? void 0 : cfg.valueTextSize) {
|
|
107
|
+
size = Utils.layout.toDevicePixels(cfg.valueTextSize);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
var setSize = set.getValueTextSize();
|
|
111
|
+
size = setSize > 0 ? setSize : Utils.layout.toDevicePixels(10);
|
|
112
|
+
}
|
|
113
|
+
this._valuePaint.setTextSize(size);
|
|
114
|
+
};
|
|
115
|
+
return NSBarChartRenderer;
|
|
116
|
+
}(com.github.mikephil.charting.renderer.BarChartRenderer));
|
|
117
|
+
export { NSBarChartRenderer };
|
|
118
|
+
//# sourceMappingURL=bar-chart-renderer.android.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bar-chart-renderer.android.js","sourceRoot":"","sources":["../../../../../packages/ncharts/charts/renderers/bar-chart-renderer.android.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;;;;;;;;;;IAcH,CAAC;;;;;;;;;;IAe6C,CAAC;;;;;;QAa1D,CAAC;IAAS,CAAC;;;;;;;;;;;;;;;;;YA8BV,CAAC;QAAa,CAAC;;;;QAUC,CAAC;;;;;;;;;;;;;;;;;;;;;oBAmChC,CAAC;gBACZ,CAAC;;;;gBAKkB,CAAC;YAEjB,CAAC;QAAc,CAAC;IAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;IAiCiB,CAAC;;;;;;;;QAQ6L,CAAC;;;;QAAgQ,CAAC;;IAAqD,CAAC;;AAAqC,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { BarDataSetConfig } from '../../common';
|
|
2
|
+
export declare class NSBarChartRenderer extends BarChartRenderer {
|
|
3
|
+
private _configs?;
|
|
4
|
+
private _prevRenderer;
|
|
5
|
+
dataProvider: any;
|
|
6
|
+
/**
|
|
7
|
+
* Static helper for standalone BarChart usage.
|
|
8
|
+
* Replaces the renderer of a BarChartView directly.
|
|
9
|
+
*/
|
|
10
|
+
static create(chartView: any, configs?: BarDataSetConfig[]): NSBarChartRenderer;
|
|
11
|
+
/**
|
|
12
|
+
* Creates a renderer instance.
|
|
13
|
+
* Used by CombinedChartRenderer or the static .create() method.
|
|
14
|
+
*/
|
|
15
|
+
static createRenderer(chartView: any, configs?: BarDataSetConfig[]): NSBarChartRenderer;
|
|
16
|
+
/**
|
|
17
|
+
* Restores the previous renderer.
|
|
18
|
+
*/
|
|
19
|
+
detach(): void;
|
|
20
|
+
/**
|
|
21
|
+
* Main entry point for drawing values.
|
|
22
|
+
*/
|
|
23
|
+
drawValuesWithContext(ctx: any): void;
|
|
24
|
+
/**
|
|
25
|
+
* Helper to draw a text label inside a specific bar segment.
|
|
26
|
+
*/
|
|
27
|
+
private _drawInSegment;
|
|
28
|
+
/**
|
|
29
|
+
* Calculates the native CGRect for a bar segment in pixel coordinates.
|
|
30
|
+
*/
|
|
31
|
+
private _segmentRect;
|
|
32
|
+
/**
|
|
33
|
+
* Uses the native formatter to generate the label string.
|
|
34
|
+
*/
|
|
35
|
+
private _formattedValue;
|
|
36
|
+
/**
|
|
37
|
+
* Resolves the text color for a specific index.
|
|
38
|
+
*/
|
|
39
|
+
private _valueColor;
|
|
40
|
+
/**
|
|
41
|
+
* Calculates the sum of negative values for proper stacked bar positioning.
|
|
42
|
+
*/
|
|
43
|
+
private _negativeSum;
|
|
44
|
+
/**
|
|
45
|
+
* Performs the actual native drawing if the text fits within the segment.
|
|
46
|
+
*/
|
|
47
|
+
private _drawTextCenteredIfFits;
|
|
48
|
+
}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
var NSBarChartRenderer = (function (_super) {
|
|
2
|
+
__extends(NSBarChartRenderer, _super);
|
|
3
|
+
function NSBarChartRenderer() {
|
|
4
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
5
|
+
}
|
|
6
|
+
NSBarChartRenderer.create = function (chartView, configs) {
|
|
7
|
+
var _a, _b, _c;
|
|
8
|
+
var chart = (_c = (_a = chartView === null || chartView === void 0 ? void 0 : chartView.ios) !== null && _a !== void 0 ? _a : (_b = chartView === null || chartView === void 0 ? void 0 : chartView.nativeView) === null || _b === void 0 ? void 0 : _b.ios) !== null && _c !== void 0 ? _c : chartView;
|
|
9
|
+
var r = NSBarChartRenderer.createRenderer(chart, configs);
|
|
10
|
+
r._prevRenderer = chart.renderer;
|
|
11
|
+
chart.renderer = r;
|
|
12
|
+
chart.setNeedsDisplay();
|
|
13
|
+
return r;
|
|
14
|
+
};
|
|
15
|
+
NSBarChartRenderer.createRenderer = function (chartView, configs) {
|
|
16
|
+
var _a, _b, _c;
|
|
17
|
+
var chart = (_c = (_a = chartView === null || chartView === void 0 ? void 0 : chartView.ios) !== null && _a !== void 0 ? _a : (_b = chartView === null || chartView === void 0 ? void 0 : chartView.nativeView) === null || _b === void 0 ? void 0 : _b.ios) !== null && _c !== void 0 ? _c : chartView;
|
|
18
|
+
var r = NSBarChartRenderer.alloc().initWithDataProviderAnimatorViewPortHandler(chart, chart.chartAnimator, chart.viewPortHandler);
|
|
19
|
+
r._configs = configs;
|
|
20
|
+
return r;
|
|
21
|
+
};
|
|
22
|
+
NSBarChartRenderer.prototype.detach = function () {
|
|
23
|
+
var chart = this.dataProvider;
|
|
24
|
+
if (chart && this._prevRenderer) {
|
|
25
|
+
chart.renderer = this._prevRenderer;
|
|
26
|
+
this._prevRenderer = null;
|
|
27
|
+
chart.setNeedsDisplay();
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
NSBarChartRenderer.prototype.drawValuesWithContext = function (ctx) {
|
|
31
|
+
var _a, _b, _c, _d, _e;
|
|
32
|
+
var data = (_a = this.dataProvider) === null || _a === void 0 ? void 0 : _a.barData;
|
|
33
|
+
if (!data)
|
|
34
|
+
return _super.prototype.drawValuesWithContext.call(this, ctx);
|
|
35
|
+
var dataSetCount = data.dataSetCount;
|
|
36
|
+
var originalStates = new Array(dataSetCount);
|
|
37
|
+
var hasInsideValues = false;
|
|
38
|
+
for (var i = 0; i < dataSetCount; i++) {
|
|
39
|
+
var set = data.dataSets.objectAtIndex(i);
|
|
40
|
+
var cfg = (_b = this._configs) === null || _b === void 0 ? void 0 : _b[i];
|
|
41
|
+
originalStates[i] = set.drawValuesEnabled;
|
|
42
|
+
if (set.drawValuesEnabled && (cfg === null || cfg === void 0 ? void 0 : cfg.drawValuesInside)) {
|
|
43
|
+
set.drawValuesEnabled = false;
|
|
44
|
+
hasInsideValues = true;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
_super.prototype.drawValuesWithContext.call(this, ctx);
|
|
48
|
+
for (var i = 0; i < dataSetCount; i++) {
|
|
49
|
+
data.dataSets.objectAtIndex(i).drawValuesEnabled = originalStates[i];
|
|
50
|
+
}
|
|
51
|
+
if (!hasInsideValues)
|
|
52
|
+
return;
|
|
53
|
+
var contentRect = this.viewPortHandler.contentRect;
|
|
54
|
+
var halfWidth = data.barWidth / 2;
|
|
55
|
+
var phaseY = this.animator.phaseY;
|
|
56
|
+
var attrs = NSMutableDictionary.new();
|
|
57
|
+
for (var dataSetIndex = 0; dataSetIndex < dataSetCount; dataSetIndex++) {
|
|
58
|
+
var set = data.dataSets.objectAtIndex(dataSetIndex);
|
|
59
|
+
var cfg = (_c = this._configs) === null || _c === void 0 ? void 0 : _c[dataSetIndex];
|
|
60
|
+
if (!(cfg === null || cfg === void 0 ? void 0 : cfg.drawValuesInside) || !set.isVisible || !set.isDrawValuesEnabled)
|
|
61
|
+
continue;
|
|
62
|
+
var trans = this.dataProvider.getTransformerForAxis(set.axisDependency);
|
|
63
|
+
var padX = (_d = cfg.drawValuesInsidePaddingX) !== null && _d !== void 0 ? _d : 2;
|
|
64
|
+
var padY = (_e = cfg.drawValuesInsidePaddingY) !== null && _e !== void 0 ? _e : 2;
|
|
65
|
+
attrs.setObjectForKey(set.valueFont, NSFontAttributeName);
|
|
66
|
+
for (var i = 0; i < set.entryCount; i++) {
|
|
67
|
+
var e = set.entryForIndex(i);
|
|
68
|
+
if (!e)
|
|
69
|
+
continue;
|
|
70
|
+
var vals = e.yValues;
|
|
71
|
+
if (vals && vals.count > 0) {
|
|
72
|
+
var posY = 0;
|
|
73
|
+
var negY = -this._negativeSum(e, vals);
|
|
74
|
+
for (var j = 0; j < vals.count; j++) {
|
|
75
|
+
var value = vals.objectAtIndex(j);
|
|
76
|
+
var fromY = void 0, toY = void 0;
|
|
77
|
+
if (value >= 0) {
|
|
78
|
+
fromY = posY;
|
|
79
|
+
posY += value;
|
|
80
|
+
toY = posY;
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
fromY = negY;
|
|
84
|
+
negY += Math.abs(value);
|
|
85
|
+
toY = negY;
|
|
86
|
+
}
|
|
87
|
+
this._drawInSegment(ctx, trans, e, fromY, toY, phaseY, halfWidth, contentRect, set, value, j, dataSetIndex, attrs, padX, padY);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this._drawInSegment(ctx, trans, e, 0, e.y, phaseY, halfWidth, contentRect, set, e.y, i, dataSetIndex, attrs, padX, padY);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
NSBarChartRenderer.prototype._drawInSegment = function (ctx, trans, e, y0, y1, phaseY, half, contentRect, set, val, colorIdx, dsIdx, attrs, px, py) {
|
|
97
|
+
var seg = this._segmentRect(trans, e.x, half, y0, y1, phaseY);
|
|
98
|
+
if (!CGRectIntersectsRect(contentRect, seg))
|
|
99
|
+
return;
|
|
100
|
+
var text = this._formattedValue(set, val, e, dsIdx);
|
|
101
|
+
if (!text)
|
|
102
|
+
return;
|
|
103
|
+
attrs.setObjectForKey(this._valueColor(set, colorIdx), NSForegroundColorAttributeName);
|
|
104
|
+
this._drawTextCenteredIfFits(seg, text, attrs, px, py);
|
|
105
|
+
};
|
|
106
|
+
NSBarChartRenderer.prototype._segmentRect = function (trans, x, half, y0, y1, phaseY) {
|
|
107
|
+
var p1 = trans.pixelForValuesWithXY(x - half, y0 * phaseY);
|
|
108
|
+
var p2 = trans.pixelForValuesWithXY(x + half, y1 * phaseY);
|
|
109
|
+
var left = Math.min(p1.x, p2.x);
|
|
110
|
+
var right = Math.max(p1.x, p2.x);
|
|
111
|
+
var top = Math.min(p1.y, p2.y);
|
|
112
|
+
var bottom = Math.max(p1.y, p2.y);
|
|
113
|
+
return CGRectMake(left, top, right - left, bottom - top);
|
|
114
|
+
};
|
|
115
|
+
NSBarChartRenderer.prototype._formattedValue = function (set, value, entry, dataSetIndex) {
|
|
116
|
+
var _a;
|
|
117
|
+
var f = set.valueFormatter;
|
|
118
|
+
if (f === null || f === void 0 ? void 0 : f.stringForValueEntryDataSetIndexViewPortHandler) {
|
|
119
|
+
return (_a = f.stringForValueEntryDataSetIndexViewPortHandler(value, entry, dataSetIndex, this.viewPortHandler)) !== null && _a !== void 0 ? _a : "";
|
|
120
|
+
}
|
|
121
|
+
return "".concat(value);
|
|
122
|
+
};
|
|
123
|
+
NSBarChartRenderer.prototype._valueColor = function (set, index) {
|
|
124
|
+
var _a;
|
|
125
|
+
if (set === null || set === void 0 ? void 0 : set.valueTextColorAtIndex)
|
|
126
|
+
return set.valueTextColorAtIndex(index);
|
|
127
|
+
return (_a = set === null || set === void 0 ? void 0 : set.valueTextColor) !== null && _a !== void 0 ? _a : UIColor.blackColor;
|
|
128
|
+
};
|
|
129
|
+
NSBarChartRenderer.prototype._negativeSum = function (entry, vals) {
|
|
130
|
+
if (entry.negativeSum && typeof entry.negativeSum === "number")
|
|
131
|
+
return entry.negativeSum;
|
|
132
|
+
var sum = 0;
|
|
133
|
+
for (var i = 0; i < vals.count; i++) {
|
|
134
|
+
var v = vals.objectAtIndex(i);
|
|
135
|
+
if (v < 0)
|
|
136
|
+
sum += Math.abs(v);
|
|
137
|
+
}
|
|
138
|
+
return sum;
|
|
139
|
+
};
|
|
140
|
+
NSBarChartRenderer.prototype._drawTextCenteredIfFits = function (rect, text, attrs, padX, padY) {
|
|
141
|
+
var s = NSString.stringWithString(text);
|
|
142
|
+
var m = s.boundingRectWithSizeOptionsAttributesContext({ width: 10000, height: 10000 }, NSStringDrawingOptions.UsesLineFragmentOrigin, attrs, null);
|
|
143
|
+
if (rect.size.width < m.size.width + padX * 2)
|
|
144
|
+
return;
|
|
145
|
+
if (rect.size.height < m.size.height + padY * 2)
|
|
146
|
+
return;
|
|
147
|
+
s.drawAtPointWithAttributes(CGPointMake(rect.origin.x + (rect.size.width - m.size.width) / 2, rect.origin.y + (rect.size.height - m.size.height) / 2), attrs);
|
|
148
|
+
};
|
|
149
|
+
return NSBarChartRenderer;
|
|
150
|
+
}(BarChartRenderer));
|
|
151
|
+
export { NSBarChartRenderer };
|
|
152
|
+
//# sourceMappingURL=bar-chart-renderer.ios.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bar-chart-renderer.ios.js","sourceRoot":"","sources":["../../../../../packages/ncharts/charts/renderers/bar-chart-renderer.ios.ts"],"names":[],"mappings":";;;;IAOe,CAAC;;;;;;;;;IAwByB,CAAC;;;;;;;IA0BlC,CAAC;;;;;;;QAQqB,CAAC;IAAS,CAAC;;;;;;;;;;;;;;;;YAmCmC,CAAC;QAEvE,CAAC;;;;QAQC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAiD8D,CAAC;;;;;wBAIjE,CAAC;;oBAKJ,CAAC;gBAAkB,CAAC;;;gBAQ2D,CAAC;YAC9E,CAAC;QAAa,CAAC;IAAS,CAAC;;;;;;;;;;IAmB8B,CAAC;;;;;;;;;IAciC,CAAC;;;;;;QAST,CAAC;;IAA0C,CAAC;;;;;;IAAgb,CAAC;;;;;;;;;QAAwc,CAAC;;IAA6B,CAAC;;;;;;;;;IAAwxB,CAAC;;AAAqC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BarDataSetConfig, PlotBandConfig } from '../../common';
|
|
2
|
+
export declare class NSCombinedChartRenderer extends com.github.mikephil.charting.renderer.CombinedChartRenderer {
|
|
3
|
+
private _configs?;
|
|
4
|
+
private _plotBandDrawer;
|
|
5
|
+
private _prevRenderer;
|
|
6
|
+
private _chart;
|
|
7
|
+
constructor(chart: any, animator: any, viewPortHandler: any, configs?: BarDataSetConfig[], plotBands?: PlotBandConfig[]);
|
|
8
|
+
static create(chartView: any, configs?: BarDataSetConfig[], plotBands?: PlotBandConfig[]): NSCombinedChartRenderer;
|
|
9
|
+
detach(): void;
|
|
10
|
+
updatePlotBands(plotBands?: PlotBandConfig[]): void;
|
|
11
|
+
createRenderers(): void;
|
|
12
|
+
drawData(c: any): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { NSBarChartRenderer } from './bar-chart-renderer.android';
|
|
2
|
+
import { PlotBandDrawer } from './plotband-drawer.android';
|
|
3
|
+
var NSCombinedChartRenderer = (function (_super) {
|
|
4
|
+
__extends(NSCombinedChartRenderer, _super);
|
|
5
|
+
function NSCombinedChartRenderer(chart, animator, viewPortHandler, configs, plotBands) {
|
|
6
|
+
var _this = _super.call(this, chart, animator, viewPortHandler) || this;
|
|
7
|
+
_this._chart = chart;
|
|
8
|
+
_this._configs = configs;
|
|
9
|
+
_this._plotBandDrawer = new PlotBandDrawer(chart, plotBands);
|
|
10
|
+
_this.createRenderers();
|
|
11
|
+
return _this;
|
|
12
|
+
}
|
|
13
|
+
NSCombinedChartRenderer.create = function (chartView, configs, plotBands) {
|
|
14
|
+
var _a, _b, _c;
|
|
15
|
+
var chart = (_c = (_a = chartView === null || chartView === void 0 ? void 0 : chartView.android) !== null && _a !== void 0 ? _a : (_b = chartView === null || chartView === void 0 ? void 0 : chartView.nativeView) === null || _b === void 0 ? void 0 : _b.android) !== null && _c !== void 0 ? _c : chartView;
|
|
16
|
+
var context = chart.getContext();
|
|
17
|
+
com.github.mikephil.charting.utils.Utils.init(context);
|
|
18
|
+
var r = new NSCombinedChartRenderer(chart, chart.getAnimator(), chart.getViewPortHandler(), configs, plotBands);
|
|
19
|
+
r._prevRenderer = chart.getRenderer();
|
|
20
|
+
chart.setRenderer(r);
|
|
21
|
+
chart.invalidate();
|
|
22
|
+
return r;
|
|
23
|
+
};
|
|
24
|
+
NSCombinedChartRenderer.prototype.detach = function () {
|
|
25
|
+
if (this._chart && this._prevRenderer) {
|
|
26
|
+
this._chart.setRenderer(this._prevRenderer);
|
|
27
|
+
this._prevRenderer = null;
|
|
28
|
+
this._chart.invalidate();
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
NSCombinedChartRenderer.prototype.updatePlotBands = function (plotBands) {
|
|
32
|
+
var _a;
|
|
33
|
+
this._plotBandDrawer.update(plotBands);
|
|
34
|
+
(_a = this._chart) === null || _a === void 0 ? void 0 : _a.invalidate();
|
|
35
|
+
};
|
|
36
|
+
NSCombinedChartRenderer.prototype.createRenderers = function () {
|
|
37
|
+
_super.prototype.createRenderers.call(this);
|
|
38
|
+
if (!this.mRenderers || !this._chart)
|
|
39
|
+
return;
|
|
40
|
+
var size = this.mRenderers.size();
|
|
41
|
+
for (var i = 0; i < size; i++) {
|
|
42
|
+
var currentRenderer = this.mRenderers.get(i);
|
|
43
|
+
if (currentRenderer instanceof com.github.mikephil.charting.renderer.BarChartRenderer && !(currentRenderer instanceof NSBarChartRenderer)) {
|
|
44
|
+
var customBarRenderer = new NSBarChartRenderer(this._chart, this.mAnimator, this.mViewPortHandler, this._configs);
|
|
45
|
+
this.mRenderers.set(i, customBarRenderer);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
NSCombinedChartRenderer.prototype.drawData = function (c) {
|
|
50
|
+
this._plotBandDrawer.drawFillsAndTextBelowData(c);
|
|
51
|
+
_super.prototype.drawData.call(this, c);
|
|
52
|
+
this._plotBandDrawer.drawTextAboveData(c);
|
|
53
|
+
};
|
|
54
|
+
return NSCombinedChartRenderer;
|
|
55
|
+
}(com.github.mikephil.charting.renderer.CombinedChartRenderer));
|
|
56
|
+
export { NSCombinedChartRenderer };
|
|
57
|
+
//# sourceMappingURL=combined-chart-renderer.android.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combined-chart-renderer.android.js","sourceRoot":"","sources":["../../../../../packages/ncharts/charts/renderers/combined-chart-renderer.android.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;;;;;;;;;;IAWrC,CAAC;;;;;;;;;;;IAgBH,CAAC;;;;;;QAUf,CAAC;IAAO,CAAC;;;;;IAUS,CAAC;;;;;;;;;;;YAkBiB,CAAC;QAGxC,CAAC;IAAS,CAAC;;;;;IAAqO,CAAC;;AAA0C,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BarDataSetConfig, PlotBandConfig } from '../../common';
|
|
2
|
+
export declare class NSCombinedChartRenderer extends CombinedChartRenderer {
|
|
3
|
+
private _configs?;
|
|
4
|
+
private _plotBandDrawer;
|
|
5
|
+
private _prevRenderer;
|
|
6
|
+
static create(chartView: any, configs?: BarDataSetConfig[], plotBands?: PlotBandConfig[]): NSCombinedChartRenderer;
|
|
7
|
+
updatePlotBands(plotBands?: PlotBandConfig[]): void;
|
|
8
|
+
updateBarConfigs(configs?: BarDataSetConfig[]): void;
|
|
9
|
+
detach(): void;
|
|
10
|
+
initBuffers(): void;
|
|
11
|
+
drawDataWithContext(ctx: any): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { NSBarChartRenderer } from './bar-chart-renderer.ios';
|
|
2
|
+
import { PlotBandDrawer } from './plotband-drawer.ios';
|
|
3
|
+
var NSCombinedChartRenderer = (function (_super) {
|
|
4
|
+
__extends(NSCombinedChartRenderer, _super);
|
|
5
|
+
function NSCombinedChartRenderer() {
|
|
6
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
7
|
+
_this._prevRenderer = null;
|
|
8
|
+
return _this;
|
|
9
|
+
}
|
|
10
|
+
NSCombinedChartRenderer.create = function (chartView, configs, plotBands) {
|
|
11
|
+
var _a, _b, _c;
|
|
12
|
+
var chart = (_c = (_a = chartView === null || chartView === void 0 ? void 0 : chartView.ios) !== null && _a !== void 0 ? _a : (_b = chartView === null || chartView === void 0 ? void 0 : chartView.nativeView) === null || _b === void 0 ? void 0 : _b.ios) !== null && _c !== void 0 ? _c : chartView;
|
|
13
|
+
var r = NSCombinedChartRenderer.alloc().initWithChartAnimatorViewPortHandler(chart, chart.chartAnimator, chart.viewPortHandler);
|
|
14
|
+
r._configs = configs;
|
|
15
|
+
r._plotBandDrawer = new PlotBandDrawer(chart, plotBands);
|
|
16
|
+
r._prevRenderer = chart.renderer;
|
|
17
|
+
chart.renderer = r;
|
|
18
|
+
chart.setNeedsDisplay();
|
|
19
|
+
return r;
|
|
20
|
+
};
|
|
21
|
+
NSCombinedChartRenderer.prototype.updatePlotBands = function (plotBands) {
|
|
22
|
+
var _a;
|
|
23
|
+
this._plotBandDrawer.update(plotBands);
|
|
24
|
+
(_a = this.chart) === null || _a === void 0 ? void 0 : _a.setNeedsDisplay();
|
|
25
|
+
};
|
|
26
|
+
NSCombinedChartRenderer.prototype.updateBarConfigs = function (configs) {
|
|
27
|
+
var _a;
|
|
28
|
+
this._configs = configs;
|
|
29
|
+
(_a = this.chart) === null || _a === void 0 ? void 0 : _a.setNeedsDisplay();
|
|
30
|
+
};
|
|
31
|
+
NSCombinedChartRenderer.prototype.detach = function () {
|
|
32
|
+
if (this.chart && this._prevRenderer) {
|
|
33
|
+
this.chart.renderer = this._prevRenderer;
|
|
34
|
+
this._prevRenderer = null;
|
|
35
|
+
this.chart.setNeedsDisplay();
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
NSCombinedChartRenderer.prototype.initBuffers = function () {
|
|
39
|
+
if (this.subRenderers) {
|
|
40
|
+
var needsUpdate = false;
|
|
41
|
+
var newRenderers = NSMutableArray.alloc().initWithCapacity(this.subRenderers.count);
|
|
42
|
+
for (var i = 0; i < this.subRenderers.count; i++) {
|
|
43
|
+
var r = this.subRenderers.objectAtIndex(i);
|
|
44
|
+
if (r instanceof BarChartRenderer && !(r instanceof NSBarChartRenderer)) {
|
|
45
|
+
newRenderers.addObject(NSBarChartRenderer.createRenderer(this.chart, this._configs));
|
|
46
|
+
needsUpdate = true;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
newRenderers.addObject(r);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (needsUpdate) {
|
|
53
|
+
this.subRenderers = newRenderers;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
_super.prototype.initBuffers.call(this);
|
|
57
|
+
};
|
|
58
|
+
NSCombinedChartRenderer.prototype.drawDataWithContext = function (ctx) {
|
|
59
|
+
this._plotBandDrawer.drawFillsAndTextBelowData(ctx);
|
|
60
|
+
_super.prototype.drawDataWithContext.call(this, ctx);
|
|
61
|
+
this._plotBandDrawer.drawTextAboveData(ctx);
|
|
62
|
+
};
|
|
63
|
+
return NSCombinedChartRenderer;
|
|
64
|
+
}(CombinedChartRenderer));
|
|
65
|
+
export { NSCombinedChartRenderer };
|
|
66
|
+
//# sourceMappingURL=combined-chart-renderer.ios.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combined-chart-renderer.ios.js","sourceRoot":"","sources":["../../../../../packages/ncharts/charts/renderers/combined-chart-renderer.ios.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;;;;;;;IAIlC,CAAC;;;;;;;;;;;IAqBA,CAAC;;;;;IAUT,CAAC;;;;;IAST,CAAC;;;;;;QAMO,CAAC;IAAU,CAAC;;;;;;;;;;gBAsBG,CAAC;;;gBAAuF,CAAC;YAAiB,CAAC;;;YAA8F,CAAC;QAAa,CAAC;;IAA0D,CAAC;;;;;IAAmQ,CAAC;;AAA0C,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { PlotBandConfig } from '../../common';
|
|
2
|
+
declare const com: any;
|
|
3
|
+
export declare class LineChartPlotBandsRenderer extends com.github.mikephil.charting.renderer.LineChartRenderer {
|
|
4
|
+
private _chart;
|
|
5
|
+
private _prevRenderer;
|
|
6
|
+
private _plotBandDrawer;
|
|
7
|
+
constructor(chart: any, animator: any, viewPortHandler: any, cfg?: PlotBandConfig[]);
|
|
8
|
+
static create(chartView: any, cfg: PlotBandConfig[]): LineChartPlotBandsRenderer;
|
|
9
|
+
update(cfg: PlotBandConfig[]): void;
|
|
10
|
+
detach(): void;
|
|
11
|
+
drawData(c: any): void;
|
|
12
|
+
}
|
|
13
|
+
export {};
|