realchart 1.1.12 → 1.2.3

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.
@@ -176,6 +176,25 @@ declare class Size {
176
176
  constructor(width?: number, height?: number);
177
177
  }
178
178
 
179
+ /**
180
+ * @internal
181
+ */
182
+ declare const PI_2: number;
183
+ declare const ORG_ANGLE: number;
184
+ /**
185
+ * @internal
186
+ */
187
+ declare const RAD_DEG: number;
188
+ /**
189
+ * @internal
190
+ */
191
+ declare function fixnum(value: number): number;
192
+ declare function toStr(value: any): string;
193
+ /**
194
+ * @internal
195
+ */
196
+ declare function pixel(v: number): string;
197
+ type Path = string | any[];
179
198
  /**
180
199
  * 123, '10%' 형식으로 크기를 지정한다.
181
200
  */
@@ -184,6 +203,14 @@ interface IPercentSize {
184
203
  size: number;
185
204
  fixed: boolean;
186
205
  }
206
+ /**
207
+ * @internal
208
+ */
209
+ declare function parsePercentSize(sv: PercentSize, enableNull: boolean, def?: number): IPercentSize;
210
+ /**
211
+ * @internal
212
+ */
213
+ declare function calcPercent(size: IPercentSize, domain: number, def?: number): number;
187
214
  /**
188
215
  * 수평 정렬.
189
216
  * @enum
@@ -379,6 +406,16 @@ interface ValueRangeList {
379
406
  styles?: SVGStyleOrClass[];
380
407
  areaStyles?: SVGStyleOrClass[];
381
408
  }
409
+ /**
410
+ * @internal
411
+ * endValue는 포함되지 않는다. 즉, startValue <= v < endValue.
412
+ * fromValue를 지정하면 이전 range의 toValue를 fromValue로 설정한다.
413
+ * 이전 범위가 없으면 min으로 지정된다.
414
+ * toValue가 지정되지 않으면 max로 지정된다.
415
+ * color가 설정되지 않거나, fromValue와 toValue가 같은 범위는 포힘시키지 않는다.
416
+ * fromValue를 기준으로 정렬한다.
417
+ */
418
+ declare const buildValueRanges: (source: ValueRange[] | ValueRangeList, min: number, max: number, inclusive?: boolean, strict?: boolean, fill?: boolean, color?: string) => ValueRange[];
382
419
  /**
383
420
  * 색상 목록에서 색을 가져오는 방식.
384
421
  * @enum
@@ -878,107 +915,15 @@ declare const AnnotationTypes: {
878
915
  type AnnotationType = typeof AnnotationTypes[keyof typeof AnnotationTypes];
879
916
  type AnnotationOptionsType = ImageAnnotationOptions | ShapeAnnotationOptions | TextAnnotationOptions;
880
917
 
881
- /**
882
- * 차트 내보내기 설정 모델
883
- * @config chart.exporting
884
- */
885
- interface ExporterOptions extends ChartItemOptions {
886
- /**
887
- * 내보내기 버튼 표시 여부 지정
888
- */
889
- visible?: boolean;
890
- /**
891
- * 내보내기 버튼을 사용해 내보낸 차트에 사용할 확장자 없는 파일 이름.\
892
- * 'export' 함수를 호출할 때 fileName을 지정하지 않을 경우 이 속성이 적용된다.
893
- * fileName을 지정하지 않을 경우 realchart.type으로 다운로드 된다.
894
- *
895
- */
896
- fileName?: string;
897
- /**
898
- * 내보내기를 라이브러리를 사용하여 진행할지 여부 지정
899
- */
900
- useLibrary?: boolean;
901
- /**
902
- * 내보내기 메뉴에 포함할 export types
903
- */
904
- menus?: ExportType[];
905
- /**
906
- * 너비, 지정한 너비에 맞춰 높이가 결정된다.
907
- */
908
- width?: number;
909
- /**
910
- * 이미지의 scale
911
- */
912
- scale?: number;
913
- /**
914
- * 내보내기 도중 에러가 발생했을 때 처리할 서버 URL.\
915
- * 지정하지 않을경우 realchart 서버에서 처리한다.
916
- */
917
- url?: string;
918
- /**
919
- * true로 지정하면 내보내기 결과에 {@page config.axis.scrollBar AxisScrollBarOptions}가 포함되지 않는다.
920
- */
921
- hideScrollbar?: boolean;
922
- /**
923
- * true로 지정하면 내보내기 결과에 {@page config.seriesNavigator SeriesNavigator}가 포함되지 않는다.
924
- */
925
- hideNavigator?: boolean;
926
- /**
927
- * true로 지정하면 내보내기 결과에 {@page config.body.zoomButton ZoomButtonOptions}가 포함되지 않는다.
928
- */
929
- hideZoomButton?: boolean;
930
- }
931
-
932
- /**
933
- * @enum
934
- */
935
- declare const _ExportType: {
936
- /** @config */
937
- readonly PNG: "png";
938
- /** @config */
939
- readonly JPEG: "jpeg";
940
- /** @config */
941
- readonly SVG: "svg";
942
- /** @config */
943
- readonly PDF: "pdf";
944
- /** @config */
945
- readonly PRINT: "print";
946
- };
947
- type ExportType = typeof _ExportType[keyof typeof _ExportType];
948
- /**
949
- * 내보내기 옵션.
950
- */
951
- interface ExportOptions {
952
- /**
953
- * 내보낸 차트에 사용할 확장자.\
954
- * type을 지정하지 않을 경우 png로 내보내기 된다.\
955
- * @config
956
- * // @TODO https://github.com/realgrid/realreport-chart/issues/549
957
- */
958
- type?: ExportType;
959
- /**
960
- * 내보낸 차트에 사용할 확장자 없는 파일명.
961
- * fileName을 지정하지 않을 경우 realchart.type으로 다운로드 된다.
962
- * @config
963
- */
964
- fileName?: string;
965
- }
966
- /**
967
- * 외부 모듈로 구현되는 차트 내보내기 기능 명세.
968
- */
969
- interface ChartExporter {
970
- exportToImage: (dom: HTMLElement, options: ExportOptions, config: ExporterOptions) => void;
971
- exportToPrint: (dom: HTMLElement, options: ExportOptions) => void;
972
- isContextMenuVisible: () => boolean;
973
- toggleContextMenu: () => void;
974
- }
975
-
976
918
  interface IRect {
977
919
  x: number;
978
920
  y: number;
979
921
  width: number;
980
922
  height: number;
981
923
  }
924
+ declare const createRect: (x: number, y: number, width: number, height: number) => IRect;
925
+ declare function rectToSize(r: IRect): Size;
926
+ declare function isEmptyRect(r: IRect): boolean;
982
927
 
983
928
  interface IPointerHandler {
984
929
  handleDown(ev: PointerEvent): void;
@@ -1255,6 +1200,9 @@ declare class RcElement extends RcObject {
1255
1200
  protected _updateTransform(): void;
1256
1201
  getTransform(): string;
1257
1202
  }
1203
+ declare class LayerElement extends RcElement {
1204
+ constructor(doc: Document, styleName: string);
1205
+ }
1258
1206
  declare abstract class ClipElement extends RcElement {
1259
1207
  private _id;
1260
1208
  constructor(doc: Document);
@@ -1274,6 +1222,12 @@ declare class ClipRectElement extends ClipElement {
1274
1222
  get height(): number;
1275
1223
  set height(value: number);
1276
1224
  }
1225
+ declare class PathElement extends RcElement {
1226
+ private _path;
1227
+ constructor(doc: Document, styleName?: string, path?: Path);
1228
+ path(): string;
1229
+ setPath(path: Path): PathElement;
1230
+ }
1277
1231
  declare class ClipCircleElement extends ClipElement {
1278
1232
  private _circle;
1279
1233
  constructor(doc: Document);
@@ -1337,21 +1291,21 @@ declare const _PointLabelPosition: {
1337
1291
  */
1338
1292
  readonly AUTO: "auto";
1339
1293
  /**
1340
- * 포인트뷰 상단에 표시.</br>
1294
+ * 포인트뷰 상단에 표시.<br/>
1341
1295
  */
1342
1296
  readonly HEAD: "head";
1343
1297
  /**
1344
- * 포인트뷰 하단에 표시.</br>
1298
+ * 포인트뷰 하단에 표시.<br/>
1345
1299
  */
1346
1300
  readonly FOOT: "foot";
1347
1301
  /**
1348
1302
  * {@page config.series.pie}나 {@page config.series.funnel}애서 데이터포인트 라벨을
1349
- * 포인트뷰 내부에 표시.</br>
1303
+ * 포인트뷰 내부에 표시.<br/>
1350
1304
  */
1351
1305
  readonly INSIDE: "inside";
1352
1306
  /**
1353
1307
  * {@page config.series.pie}나 {@page config.series.funnel}애서 데이터포인트 라벨을
1354
- * 포인트뷰 외부에 표시.</br>
1308
+ * 포인트뷰 외부에 표시.<br/>
1355
1309
  */
1356
1310
  readonly OUTSIDE: "outside";
1357
1311
  };
@@ -2054,6 +2008,10 @@ declare const _PointLabelAlign: {
2054
2008
  readonly FAR: "far";
2055
2009
  };
2056
2010
  type PointLabelAlign = typeof _PointLabelAlign[keyof typeof _PointLabelAlign];
2011
+ /**
2012
+ * 겹치는 데이터포인트 라벨들의 처리 방식.<br/>
2013
+ * @enum
2014
+ */
2057
2015
  declare const _PointLabelDedupeMode: {
2058
2016
  /**
2059
2017
  * 중복제거 없이 모두 표시한다.
@@ -2066,9 +2024,13 @@ declare const _PointLabelDedupeMode: {
2066
2024
  /**
2067
2025
  * 값이 큰 항목을 우선으로 표시한다.
2068
2026
  */
2069
- readonly LARGEST_FIRST: "LargestFirst";
2027
+ readonly LARGEST_FIRST: "largestFirst";
2070
2028
  };
2071
2029
  type PointLabelDedupeMode = typeof _PointLabelDedupeMode[keyof typeof _PointLabelDedupeMode];
2030
+ /**
2031
+ * 영역을 벗어나는 데이터포인트 라벨들의 표시 여부.<br/>
2032
+ * @enum
2033
+ */
2072
2034
  declare const _PointLabelOverflow: {
2073
2035
  /**
2074
2036
  * 모두 표시한다.
@@ -2108,7 +2070,7 @@ interface WidgetSeriesLabelOptions extends DataPointLabelOptions {
2108
2070
  */
2109
2071
  convergable?: boolean;
2110
2072
  /**
2111
- * label과 pie 본체와의 기본 간격.<br/.
2073
+ * label과 pie 본체와의 기본 간격.<br/>
2112
2074
  */
2113
2075
  distance?: number;
2114
2076
  /**
@@ -3014,48 +2976,6 @@ interface FunnelSeriesOptions extends WidgetSeriesOptions {
3014
2976
  */
3015
2977
  legendByPoint?: boolean;
3016
2978
  }
3017
- declare const HeatmapSeriesType = "heatmap";
3018
- /**
3019
- * Heatmap 시리즈.<br/>
3020
- * {@page op.SeriesOptions#type}은 'heatmap'이다.<br/>
3021
- * 숫자 대신 색상으로 값들을 table에 표시한다.<br/>
3022
- * 차트나 split pane에 하나의 heatmap만 존재할 수 있다.<br/>
3023
- *
3024
- * //[셀 색상]
3025
- * //1. color-axis가 연결되면 거기에서 색을 가져온다.
3026
- * //2. series의 minColor, maxColor 사이의 색으로 가져온다.
3027
- * //3. series의 기본 색상과 흰색 사이의 색으로 가져온다.
3028
- *
3029
- * {@page data}는 아래 형식들로 전달할 수 있다.<br/>
3030
- * [주의] 데이터포인트 구성에 필요한 모든 값을 제공하지 않으면 null이 된다.
3031
- *
3032
- * ###### 단일값 또는 단일값 배열
3033
- * |형식|설명|
3034
- * |---|---|
3035
- * |y|단일 숫자면 y, z값. x 값은 순서에 따라 자동 결정.|
3036
- * |[]|빈 배열이면 null. x 값은 순서에 따라 자동 결정.|
3037
- * |[z]|단일값 배열이면 y, z값. x 값은 순서에 따라 자동 결정.|
3038
- * |[y, z]|두 값 배열이면 y값과 z값. x 값은 순서에 따라 자동 결정.|
3039
- * |[x, y, z,]|세 값 이상이면 순서대로 x, y, z값.<br/> 또는 {@page xField} 속성이 숫자이면 x값의 index. {@page yField}는 y값의 index. {@page zField}는 z값의 index.|
3040
- *
3041
- * ###### json 배열
3042
- * |Series 속성|설명|
3043
- * |---|---|
3044
- * |{@page xField}|속성 값, 또는 'x', 'name', 'label' 속성들 중 순서대로 값이 설정된 것이 x 값이 된다.|
3045
- * |{@page yField}|속성 값, 또는 'y', 'value' 속성들 중 순서대로 값이 설정된 것이 y 값이 된다.|
3046
- * |{@page zField}|속성 값, 또는 'z' 속성 값이 z 값이 된다.|
3047
- * |{@page colorField}|속성 값, 또는 'color' 속성 값으로 데이터포인트의 개별 색상으로 지정된다.|
3048
- *
3049
- * @config chart.series[type=heatmap]
3050
- */
3051
- interface HeatmapSeriesOptions extends ConnectableSeriesOptions {
3052
- type?: typeof HeatmapSeriesType;
3053
- /**
3054
- * @override
3055
- * @default 'x: <b>${x}</b><br>y: <b>${y}</b><br>heat: <b>${z}</b>'
3056
- */
3057
- tooltipText?: string;
3058
- }
3059
2979
  /**
3060
2980
  * @enum
3061
2981
  */
@@ -3322,6 +3242,10 @@ interface RadialSeriesOptions extends WidgetSeriesOptions {
3322
3242
  }
3323
3243
  interface PieSeriesTextOptions extends IconedTextOptions {
3324
3244
  }
3245
+ /**
3246
+ * 데이터포인트 라벨의 회전 방식 지정.<br/>
3247
+ * @enum
3248
+ */
3325
3249
  declare const _PointLabelRotationMode: {
3326
3250
  /**
3327
3251
  * 호를 따라 label을 회전 시킨다.
@@ -3481,6 +3405,42 @@ interface ScatterSeriesOptions extends MarkerSeriesOptions {
3481
3405
  */
3482
3406
  hoverScale?: number;
3483
3407
  }
3408
+ interface RangedSeriesOptions extends ClusterableSeriesOptions {
3409
+ }
3410
+ declare const WaterfallSeriesType = "waterfall";
3411
+ /**
3412
+ * 폭포(Waterfall) 시리즈.<br/>
3413
+ * {@page op.SeriesOptions#type}은 'waterfall'이다.<br/>
3414
+ * 순서대로 추가되는 증가/감소 값들의 누적 상태를 표시하는 데 사용된다.<br/>
3415
+ *
3416
+ * {@page data}는 아래 형식들로 전달할 수 있다.<br/>
3417
+ *
3418
+ * ###### 단일값 또는 단일값 배열
3419
+ * |형식|설명|
3420
+ * |---|---|
3421
+ * |y|단일 숫자면 y값. x 값은 순서에 따라 자동 결정.|
3422
+ * |[]|빈 배열이면 null. x 값은 순서에 따라 자동 결정.|
3423
+ * |[y]|값 하나인 배열이면 y값. x 값은 순서에 따라 자동 결정.|
3424
+ * |[x, y,]|두 값 이상이면 순서대로 x, y값.<br/> 또는 {@page xField} 속성이 숫자이면 x값의 index. {@page yField}는 y값의 index.<br/>{@page colorField}는 color값의 index.|
3425
+ *
3426
+ * ###### json 배열
3427
+ * |Series 속성|설명 |
3428
+ * |---|---|
3429
+ * |{@page xField}|속성 값, 또는 'x', 'name', 'label' 속성들 중 순서대로 값이 설정된 것이 x 값이 된다.|
3430
+ * |{@page yField}|속성 값, 또는 'y', 'value' 속성들 중 순서대로 값이 설정된 것이 y 값이 된다.|
3431
+ * |{@page colorField}|속성 값, 또는 'color' 속성 값으로 데이터포인트의 개별 색상으로 지정된다.|
3432
+ *
3433
+ * @config chart.series[type=waterfall]
3434
+ */
3435
+ interface WaterfallSeriesOptions extends ClusterableSeriesOptions {
3436
+ type?: typeof WaterfallSeriesType;
3437
+ /**
3438
+ * 지정한 반지름 크기로 데이터포인트 bar의 모서리를 둥글게 표시한다.\
3439
+ * 최대값이 bar 폭으로 절반으로 제한되므로 아주 큰 값을 지정하면 반원으로 표시된다.
3440
+ *
3441
+ */
3442
+ cornerRadius?: number;
3443
+ }
3484
3444
  /**
3485
3445
  * @enum
3486
3446
  */
@@ -3555,6 +3515,7 @@ declare const TreemapSeriesType = "treemap";
3555
3515
  * |{@page groupField}|속성 값, 또는 'group' 속성 값이 angle 값이 된다.|
3556
3516
  *
3557
3517
  * @config chart.series[type=treemap]
3518
+ * @modules treemap
3558
3519
  */
3559
3520
  interface TreemapSeriesOptions extends SeriesOptions {
3560
3521
  type?: typeof TreemapSeriesType;
@@ -3598,6 +3559,49 @@ interface TreemapSeriesOptions extends SeriesOptions {
3598
3559
  */
3599
3560
  tooltipLevel?: number;
3600
3561
  }
3562
+ declare const HeatmapSeriesType = "heatmap";
3563
+ /**
3564
+ * Heatmap 시리즈.<br/>
3565
+ * {@page op.SeriesOptions#type}은 'heatmap'이다.<br/>
3566
+ * 숫자 대신 색상으로 값들을 table에 표시한다.<br/>
3567
+ * 차트나 split pane에 하나의 heatmap만 존재할 수 있다.<br/>
3568
+ *
3569
+ * //[셀 색상]
3570
+ * //1. color-axis가 연결되면 거기에서 색을 가져온다.
3571
+ * //2. series의 minColor, maxColor 사이의 색으로 가져온다.
3572
+ * //3. series의 기본 색상과 흰색 사이의 색으로 가져온다.
3573
+ *
3574
+ * {@page data}는 아래 형식들로 전달할 수 있다.<br/>
3575
+ * [주의] 데이터포인트 구성에 필요한 모든 값을 제공하지 않으면 null이 된다.
3576
+ *
3577
+ * ###### 단일값 또는 단일값 배열
3578
+ * |형식|설명|
3579
+ * |---|---|
3580
+ * |y|단일 숫자면 y, z값. x 값은 순서에 따라 자동 결정.|
3581
+ * |[]|빈 배열이면 null. x 값은 순서에 따라 자동 결정.|
3582
+ * |[z]|단일값 배열이면 y, z값. x 값은 순서에 따라 자동 결정.|
3583
+ * |[y, z]|두 값 배열이면 y값과 z값. x 값은 순서에 따라 자동 결정.|
3584
+ * |[x, y, z,]|세 값 이상이면 순서대로 x, y, z값.<br/> 또는 {@page xField} 속성이 숫자이면 x값의 index. {@page yField}는 y값의 index. {@page zField}는 z값의 index.|
3585
+ *
3586
+ * ###### json 배열
3587
+ * |Series 속성|설명|
3588
+ * |---|---|
3589
+ * |{@page xField}|속성 값, 또는 'x', 'name', 'label' 속성들 중 순서대로 값이 설정된 것이 x 값이 된다.|
3590
+ * |{@page yField}|속성 값, 또는 'y', 'value' 속성들 중 순서대로 값이 설정된 것이 y 값이 된다.|
3591
+ * |{@page zField}|속성 값, 또는 'z' 속성 값이 z 값이 된다.|
3592
+ * |{@page colorField}|속성 값, 또는 'color' 속성 값으로 데이터포인트의 개별 색상으로 지정된다.|
3593
+ *
3594
+ * @config chart.series[type=heatmap]
3595
+ * @modules heatmap
3596
+ */
3597
+ interface HeatmapSeriesOptions extends ConnectableSeriesOptions {
3598
+ type?: typeof HeatmapSeriesType;
3599
+ /**
3600
+ * @override
3601
+ * @default 'x: <b>${x}</b><br>y: <b>${y}</b><br>heat: <b>${z}</b>'
3602
+ */
3603
+ tooltipText?: string;
3604
+ }
3601
3605
  /**
3602
3606
  * vector 화살표 회전 중심.
3603
3607
  * @enum
@@ -3674,6 +3678,7 @@ declare const VectorSeriesType = "vector";
3674
3678
  * |{@page angleField}|속성 값, 또는 'angle' 속성 값이 angle 값이 된다.|
3675
3679
  *
3676
3680
  * @config chart.series[type=vector]
3681
+ * @modules vector
3677
3682
  */
3678
3683
  interface VectorSeriesOptions extends ConnectableSeriesOptions {
3679
3684
  type?: typeof VectorSeriesType;
@@ -3716,42 +3721,6 @@ interface VectorSeriesOptions extends ConnectableSeriesOptions {
3716
3721
  */
3717
3722
  arrowHead?: ArrowHead;
3718
3723
  }
3719
- interface RangedSeriesOptions extends ClusterableSeriesOptions {
3720
- }
3721
- declare const WaterfallSeriesType = "waterfall";
3722
- /**
3723
- * 폭포(Waterfall) 시리즈.<br/>
3724
- * {@page op.SeriesOptions#type}은 'waterfall'이다.<br/>
3725
- * 순서대로 추가되는 증가/감소 값들의 누적 상태를 표시하는 데 사용된다.<br/>
3726
- *
3727
- * {@page data}는 아래 형식들로 전달할 수 있다.<br/>
3728
- *
3729
- * ###### 단일값 또는 단일값 배열
3730
- * |형식|설명|
3731
- * |---|---|
3732
- * |y|단일 숫자면 y값. x 값은 순서에 따라 자동 결정.|
3733
- * |[]|빈 배열이면 null. x 값은 순서에 따라 자동 결정.|
3734
- * |[y]|값 하나인 배열이면 y값. x 값은 순서에 따라 자동 결정.|
3735
- * |[x, y,]|두 값 이상이면 순서대로 x, y값.<br/> 또는 {@page xField} 속성이 숫자이면 x값의 index. {@page yField}는 y값의 index.<br/>{@page colorField}는 color값의 index.|
3736
- *
3737
- * ###### json 배열
3738
- * |Series 속성|설명 |
3739
- * |---|---|
3740
- * |{@page xField}|속성 값, 또는 'x', 'name', 'label' 속성들 중 순서대로 값이 설정된 것이 x 값이 된다.|
3741
- * |{@page yField}|속성 값, 또는 'y', 'value' 속성들 중 순서대로 값이 설정된 것이 y 값이 된다.|
3742
- * |{@page colorField}|속성 값, 또는 'color' 속성 값으로 데이터포인트의 개별 색상으로 지정된다.|
3743
- *
3744
- * @config chart.series[type=waterfall]
3745
- */
3746
- interface WaterfallSeriesOptions extends ClusterableSeriesOptions {
3747
- type?: typeof WaterfallSeriesType;
3748
- /**
3749
- * 지정한 반지름 크기로 데이터포인트 bar의 모서리를 둥글게 표시한다.\
3750
- * 최대값이 bar 폭으로 절반으로 제한되므로 아주 큰 값을 지정하면 반원으로 표시된다.
3751
- *
3752
- */
3753
- cornerRadius?: number;
3754
- }
3755
3724
  /** @enum */
3756
3725
  declare const CandlestickSeriesTypes: {
3757
3726
  readonly CandlestickSeriesType: "candlestick";
@@ -3772,7 +3741,7 @@ declare const LineSeriesTypes: {
3772
3741
  readonly BellCurveSeriesType: "bellcurve";
3773
3742
  };
3774
3743
  type LineSeriesOptionsType = typeof LineSeriesTypes[keyof typeof LineSeriesTypes];
3775
- type SeriesOptionsType = SeriesOptions | SeriesGroupOptions | BarRangeSeriesOptions | BarSeriesOptions | BarSeriesGroupOptions | BellCurveSeriesOptions | BoxPlotSeriesOptions | BubbleSeriesOptions | BumpSeriesGroupOptions | CandlestickSeriesOptions | CircleBarSeriesOptions | DumbbellSeriesOptions | EqualizerSeriesOptions | ErrorBarSeriesOptions | FunnelSeriesOptions | HeatmapSeriesOptions | HistogramSeriesOptions | AreaRangeSeriesOptions | AreaSeriesOptions | LineSeriesOptions | LineSeriesGroupOptions | SplineSeriesOptions | LollipopSeriesOptions | OhlcSeriesOptions | ParetoSeriesOptions | PieSeriesOptions | PieSeriesGroupOptions | ScatterSeriesOptions | TreemapSeriesOptions | VectorSeriesOptions | WaterfallSeriesOptions;
3744
+ type SeriesOptionsType = SeriesOptions | SeriesGroupOptions | BarRangeSeriesOptions | BarSeriesOptions | BarSeriesGroupOptions | BellCurveSeriesOptions | BoxPlotSeriesOptions | BubbleSeriesOptions | BumpSeriesGroupOptions | CandlestickSeriesOptions | CircleBarSeriesOptions | DumbbellSeriesOptions | EqualizerSeriesOptions | ErrorBarSeriesOptions | FunnelSeriesOptions | HistogramSeriesOptions | AreaRangeSeriesOptions | AreaSeriesOptions | LineSeriesOptions | LineSeriesGroupOptions | SplineSeriesOptions | LollipopSeriesOptions | OhlcSeriesOptions | ParetoSeriesOptions | PieSeriesOptions | PieSeriesGroupOptions | ScatterSeriesOptions | WaterfallSeriesOptions | TreemapSeriesOptions | HeatmapSeriesOptions | VectorSeriesOptions;
3776
3745
 
3777
3746
  /**
3778
3747
  * 차트 제목(title) 설정 옵션.<br/>
@@ -4121,8 +4090,6 @@ interface BodyOptions extends ChartItemOptions {
4121
4090
  */
4122
4091
  annotation?: AnnotationOptionsType | AnnotationOptionsType[];
4123
4092
  }
4124
- interface PaneBodyOptions$1 extends BodyOptions {
4125
- }
4126
4093
  interface NavigiatorHandleOptions extends ChartItemOptions {
4127
4094
  }
4128
4095
  interface NavigiatorMaskOptions extends ChartItemOptions {
@@ -4413,6 +4380,147 @@ interface TooltipOptions extends ChartItemOptions {
4413
4380
  timeFormat?: string;
4414
4381
  }
4415
4382
 
4383
+ interface PaneOptions extends ChartItemOptions {
4384
+ width?: number;
4385
+ height?: number;
4386
+ inverted?: boolean;
4387
+ body: PaneBodyOptions;
4388
+ }
4389
+ interface PaneBodyOptions extends BodyOptions {
4390
+ }
4391
+ /**
4392
+ * 다중 분할 panes.\
4393
+ * 각 pane에 해당하는 x, y축이 반드시 존재해야 한다.
4394
+ * axis는 {@page config.base.axis#row row}, {@page config.base.axis#col col} 속성으로 위치를 지정한다.
4395
+ * 시리즈는 {@page config.base.series#row row}, {@page config.base.series#col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
4396
+ * // 현재 문서 구조로 SeriesGroup을 가리킬 수 없음.
4397
+ * // 시리즈그룹은 {@page SeriesGroup.row row}, {@page SeriesGroup.col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
4398
+ *
4399
+ * @config chart.split
4400
+ * @modules split
4401
+ */
4402
+ interface SplitOptions extends ChartItemOptions {
4403
+ /**
4404
+ * @override
4405
+ * @default false
4406
+ */
4407
+ visible?: boolean;
4408
+ /**
4409
+ * y축 방향 분할 수를 지정한다.<br/>
4410
+ * //숫자로 지정하면 동일한 높이를 갖는 pane들로 표시된다.
4411
+ * //배열로 지정하면 각 항목은 고정 크기 수자, 혹은 '*'로 끝나는 상대 크기.
4412
+ *
4413
+ */
4414
+ rows?: number | (number | `${number}*` | '*')[];
4415
+ /**
4416
+ * x축 방향 분할 수를 지정한다.<br/>
4417
+ * //숫자로 지정하면 동일한 너비를 갖는 pane들로 표시된다.
4418
+ * //배열로 지정하면 각 항목은 고정 크기 수자, 혹은 '*'로 끝나는 상대 크기.
4419
+ *
4420
+ * @default false
4421
+ */
4422
+ cols?: number | (number | `${number}*` | '*')[];
4423
+ /**
4424
+ * @default 0
4425
+ */
4426
+ gap?: number;
4427
+ }
4428
+
4429
+ /**
4430
+ * 차트 내보내기 설정 모델
4431
+ * @config chart.exporting
4432
+ */
4433
+ interface ExporterOptions extends ChartItemOptions {
4434
+ /**
4435
+ * 내보내기 버튼 표시 여부 지정
4436
+ */
4437
+ visible?: boolean;
4438
+ /**
4439
+ * 내보내기 버튼을 사용해 내보낸 차트에 사용할 확장자 없는 파일 이름.\
4440
+ * 'export' 함수를 호출할 때 fileName을 지정하지 않을 경우 이 속성이 적용된다.
4441
+ * fileName을 지정하지 않을 경우 realchart.type으로 다운로드 된다.
4442
+ *
4443
+ */
4444
+ fileName?: string;
4445
+ /**
4446
+ * 내보내기를 라이브러리를 사용하여 진행할지 여부 지정
4447
+ */
4448
+ useLibrary?: boolean;
4449
+ /**
4450
+ * 내보내기 메뉴에 포함할 export types
4451
+ */
4452
+ menus?: ExportType[];
4453
+ /**
4454
+ * 너비, 지정한 너비에 맞춰 높이가 결정된다.
4455
+ */
4456
+ width?: number;
4457
+ /**
4458
+ * 이미지의 scale
4459
+ */
4460
+ scale?: number;
4461
+ /**
4462
+ * 내보내기 도중 에러가 발생했을 때 처리할 서버 URL.\
4463
+ * 지정하지 않을경우 realchart 서버에서 처리한다.
4464
+ */
4465
+ url?: string;
4466
+ /**
4467
+ * true로 지정하면 내보내기 결과에 {@page config.axis.scrollBar AxisScrollBarOptions}가 포함되지 않는다.
4468
+ */
4469
+ hideScrollbar?: boolean;
4470
+ /**
4471
+ * true로 지정하면 내보내기 결과에 {@page config.seriesNavigator SeriesNavigator}가 포함되지 않는다.
4472
+ */
4473
+ hideNavigator?: boolean;
4474
+ /**
4475
+ * true로 지정하면 내보내기 결과에 {@page config.body.zoomButton ZoomButtonOptions}가 포함되지 않는다.
4476
+ */
4477
+ hideZoomButton?: boolean;
4478
+ }
4479
+
4480
+ /**
4481
+ * @enum
4482
+ */
4483
+ declare const _ExportType: {
4484
+ /** @config */
4485
+ readonly PNG: "png";
4486
+ /** @config */
4487
+ readonly JPEG: "jpeg";
4488
+ /** @config */
4489
+ readonly SVG: "svg";
4490
+ /** @config */
4491
+ readonly PDF: "pdf";
4492
+ /** @config */
4493
+ readonly PRINT: "print";
4494
+ };
4495
+ type ExportType = typeof _ExportType[keyof typeof _ExportType];
4496
+ /**
4497
+ * 내보내기 옵션.
4498
+ */
4499
+ interface ExportOptions {
4500
+ /**
4501
+ * 내보낸 차트에 사용할 확장자.\
4502
+ * type을 지정하지 않을 경우 png로 내보내기 된다.\
4503
+ * @config
4504
+ * // @TODO https://github.com/realgrid/realreport-chart/issues/549
4505
+ */
4506
+ type?: ExportType;
4507
+ /**
4508
+ * 내보낸 차트에 사용할 확장자 없는 파일명.
4509
+ * fileName을 지정하지 않을 경우 realchart.type으로 다운로드 된다.
4510
+ * @config
4511
+ */
4512
+ fileName?: string;
4513
+ }
4514
+ /**
4515
+ * 외부 모듈로 구현되는 차트 내보내기 기능 명세.
4516
+ */
4517
+ interface ChartExporter {
4518
+ exportToImage: (dom: HTMLElement, options: ExportOptions, config: ExporterOptions) => void;
4519
+ exportToPrint: (dom: HTMLElement, options: ExportOptions) => void;
4520
+ isContextMenuVisible: () => boolean;
4521
+ toggleContextMenu: () => void;
4522
+ }
4523
+
4416
4524
  /**
4417
4525
  * @enum
4418
4526
  */
@@ -4735,6 +4843,7 @@ declare class SvgRichText {
4735
4843
  $_parse(fmt: string): void;
4736
4844
  }
4737
4845
 
4846
+ declare const extend: <O extends ChartItemOptions>(base: any, source: O) => O;
4738
4847
  /**
4739
4848
  * {@page Series 시리즈}, {@page rc.Axis 축}, {@page rc.Legend legend} 등, 차트 구성 요소 모델들의 기반 클래스.<br/>
4740
4849
  * {@page updateOptions}등의 공통 메소드들이 구현되어 있다.
@@ -4969,7 +5078,7 @@ declare abstract class ChartText<OP extends ChartTextOptions> extends ChartItem<
4969
5078
  protected _getText(text: string, value: any, useSymbols: boolean, forceSymbols: boolean): string;
4970
5079
  }
4971
5080
  /**
4972
- * 텍스트 주위에 이미지 아이콘이 표시되는 {@link rc.ChartText 차트 텍스트} 모델.<br/>
5081
+ * 텍스트 주위에 이미지 아이콘이 표시되는 {@link rct.ChartText 차트 텍스트} 모델.<br/>
4973
5082
  * 설정 {@link options} 모델은 {@page op.IconedTextOptions}이다.
4974
5083
  */
4975
5084
  declare abstract class IconedText<OP extends IconedTextOptions = IconedTextOptions> extends ChartText<OP> {
@@ -4984,6 +5093,29 @@ declare abstract class IconedText<OP extends IconedTextOptions = IconedTextOptio
4984
5093
  declare class BackgroundImage extends ChartItem<BackgroundImageOptions> {
4985
5094
  }
4986
5095
 
5096
+ type RcAnimationEndHandler = (ani: RcAnimation) => void;
5097
+ declare abstract class RcAnimation {
5098
+ static readonly DURATION = 700;
5099
+ static readonly SHORT_DURATION = 300;
5100
+ delay: number;
5101
+ duration: number;
5102
+ easing: string;
5103
+ endHandler: RcAnimationEndHandler;
5104
+ private _easing;
5105
+ private _started;
5106
+ private _timer;
5107
+ private _ani;
5108
+ private _handler;
5109
+ start(endHandler?: RcAnimationEndHandler): RcAnimation;
5110
+ stop(): void;
5111
+ protected _start(duration: number, delay?: number, easing?: string): void;
5112
+ protected _stop(): void;
5113
+ protected _doStart(): void;
5114
+ protected _doStop(): void;
5115
+ protected _canUpdate(): boolean;
5116
+ protected abstract _doUpdate(rate: number): boolean;
5117
+ }
5118
+
4987
5119
  /**
4988
5120
  * @enum
4989
5121
  */
@@ -5780,6 +5912,9 @@ declare class PlottingItemCollection extends ChartItemCollection<PlottingItem> {
5780
5912
  private $_loadItem;
5781
5913
  private $_add;
5782
5914
  }
5915
+ /**
5916
+ * @internal
5917
+ */
5783
5918
  declare abstract class ConnectableSeries<OP extends ConnectableSeriesOptions = ConnectableSeriesOptions> extends Series<OP> {
5784
5919
  static defaults: ConnectableSeriesOptions;
5785
5920
  protected _doInitChildren(op: {
@@ -6090,6 +6225,30 @@ declare class DataPointCollection {
6090
6225
  forEach(callback: (p: DataPoint, i?: number) => any): void;
6091
6226
  getPoints(xAxis: IAxis, yAxis: IAxis): DataPoint[];
6092
6227
  }
6228
+ /**
6229
+ * @internal
6230
+ *
6231
+ * [y, z]
6232
+ * [x, y, z]
6233
+ */
6234
+ declare abstract class ZValuePoint extends DataPoint {
6235
+ z: any;
6236
+ zLabel: any;
6237
+ zValue: number;
6238
+ getPointLabel(index: number): any;
6239
+ getPointText(index: number): string;
6240
+ getValue(): number;
6241
+ getZValue(): number;
6242
+ protected _assignTo(proxy: any): any;
6243
+ protected _valuesChangd(prev: any): boolean;
6244
+ protected _readArray(series: Series, v: any[]): void;
6245
+ protected _readObject(series: Series, v: any): void;
6246
+ protected _readSingle(v: any): void;
6247
+ parse(series: Series): void;
6248
+ initValues(): void;
6249
+ initPrev(axis: IAxis, prev: any): void;
6250
+ applyValueRate(prev: any, vr: number): void;
6251
+ }
6093
6252
  /**
6094
6253
  * @internal
6095
6254
  *
@@ -6291,6 +6450,19 @@ declare abstract class AxisGuide<OP extends AxisGuideOptions = AxisGuideOptions>
6291
6450
  get label(): AxisGuideLabel;
6292
6451
  canConstainedTo(row: number, col: number): boolean;
6293
6452
  }
6453
+ /**
6454
+ * 축 위의 특정한 값에 선분을 표시한다.<br/>
6455
+ * {@page options} 모델은 {@page op.AxisLineGuideOptions}이다.
6456
+ */
6457
+ declare class AxisLineGuide extends AxisGuide<AxisLineGuideOptions> {
6458
+ }
6459
+ /**
6460
+ * 축 위 특정한 두 값 사이의 영역을 구분 표시한다.<br/>
6461
+ * [주의] realchart-style.css에 fill-opacity가 0.2로 설정되어 있다.<br/>
6462
+ * {@page options} 모델은 {@page op.AxisRangeGuideOptions}이다.
6463
+ */
6464
+ declare class AxisRangeGuide extends AxisGuide<AxisRangeGuideOptions> {
6465
+ }
6294
6466
  /**
6295
6467
  * 축 tick 표시 방식과 tick 위치 마다 표시되는 선(line) 등에 대한 모델들의 기반(base) 클래스.<br/>
6296
6468
  * 축 종류에 따라 다양한 설정 속성들이 존재한다.
@@ -6643,40 +6815,6 @@ declare class AxisCollection extends ChartItemCollection<Axis> {
6643
6815
  resetZoom(): void;
6644
6816
  private $_loadAxis;
6645
6817
  }
6646
- declare class PaneAxes {
6647
- _axes: Axis[];
6648
- }
6649
- declare abstract class PaneAxisMatrix {
6650
- chart: IChart;
6651
- isX: boolean;
6652
- protected _matrix: PaneAxes[][];
6653
- constructor(chart: IChart, isX: boolean);
6654
- rows(): number;
6655
- cols(): number;
6656
- abstract _prepare(axes: AxisCollection, rows: number, cols: number): void;
6657
- get(row: number, col: number): PaneAxes;
6658
- getRow(row: number): PaneAxes[];
6659
- getColumn(col: number): PaneAxes[];
6660
- _buildTicks(lens: number[]): void;
6661
- _calcPoints(lens: number[], phase: number): void;
6662
- }
6663
- /**
6664
- * (r + 1) * c
6665
- */
6666
- declare class PaneXAxisMatrix extends PaneAxisMatrix {
6667
- /**
6668
- * 차트 내부에서 자동 생성되므로 이 생성자를 직접 호출할 일은 없다.
6669
- */
6670
- constructor(chart: IChart);
6671
- _prepare(axes: AxisCollection, rows: number, cols: number): void;
6672
- }
6673
- /**
6674
- * r * (c + 1)
6675
- */
6676
- declare class PaneYAxisMatrix extends PaneAxisMatrix {
6677
- constructor(chart: IChart);
6678
- _prepare(axes: AxisCollection, rows: number, cols: number): void;
6679
- }
6680
6818
 
6681
6819
  /**
6682
6820
  * @enum
@@ -7633,7 +7771,7 @@ interface CategoryAxisOptions extends AxisOptions {
7633
7771
  * weightSeries data에서 weight를 제공하는 필드.<br/>
7634
7772
  * // TODO: 구현할 것! (시리즈가 아니라 여기서 지정한 게 맞나?)
7635
7773
  */
7636
- wieghtField?: number | string;
7774
+ weightField?: number | string;
7637
7775
  /**
7638
7776
  * 축의 양 끝 카테고리 위치 전후에 여백으로 추가되는 크기.<br/>
7639
7777
  * 각각 시작/끝 카테고리에 대한 상대적 크기로 지정한다.
@@ -8232,6 +8370,7 @@ declare const BulletGaugeType = "bullet";
8232
8370
  * 또, {@page band}를 같이 표시하면, 여러 값 범위 중 어디에 속한 상태인 지를 나타낼 수 있다.
8233
8371
  *
8234
8372
  * @config chart.gauge[type=bullet]
8373
+ * @modules gauge
8235
8374
  */
8236
8375
  interface BulletGaugeOptions extends LinearGaugeBaseOptions {
8237
8376
  type?: typeof BulletGaugeType;
@@ -8274,6 +8413,7 @@ declare const BulletGaugeGroupType = "bulletgroup";
8274
8413
  * {@page op.GaugeOptions#type}은 'bulletgroup'이다.
8275
8414
  *
8276
8415
  * @config chart.gauge[type=bulletgroup]
8416
+ * @modules gauge
8277
8417
  */
8278
8418
  interface BulletGaugeGroupOptions extends LinearGaugeGroupBaseOptions<BulletGaugeOptions> {
8279
8419
  type?: typeof BulletGaugeGroupType;
@@ -8716,6 +8856,7 @@ declare const CircleGaugeType = "circle";
8716
8856
  * 지정된 최대 각도 내에서 현재 값의 비율을 원호로 표시한다.<br/>
8717
8857
  *
8718
8858
  * @config chart.gauge[type=circle]
8859
+ * @modules gauge
8719
8860
  */
8720
8861
  interface CircleGaugeOptions extends CircularGaugeOptions {
8721
8862
  type?: typeof CircleGaugeType;
@@ -8756,6 +8897,7 @@ declare const CircleGaugeGroupType = "circlegroup";
8756
8897
  * {@page op.GaugeOptions#type}은 'circlegroup'이다.
8757
8898
  *
8758
8899
  * @config chart.gauge[type=circlegroup]
8900
+ * @modules gauge
8759
8901
  */
8760
8902
  interface CircleGaugeGroupOptions extends CircularGaugeGroupOptions {
8761
8903
  type?: typeof CircleGaugeGroupType;
@@ -8853,6 +8995,7 @@ declare const ClockGaugeType = "clock";
8853
8995
  * 원형 아날로그 시계를 표시한다.<br/>
8854
8996
  *
8855
8997
  * @config chart.gauge[type=clock]
8998
+ * @modules gauge
8856
8999
  */
8857
9000
  interface ClockGaugeOptions extends GaugeOptions {
8858
9001
  type?: typeof ClockGaugeType;
@@ -8946,6 +9089,7 @@ declare const LinearGaugeType = "linear";
8946
9089
  * 또, {@page band}를 같이 표시하면, 여러 값 범위 중 어디에 속한 상태인 지를 나타낼 수 있다.<br/>
8947
9090
  *
8948
9091
  * @config chart.gauge[type=linear]
9092
+ * @modules gauge
8949
9093
  */
8950
9094
  interface LinearGaugeOptions extends LinearGaugeBaseOptions {
8951
9095
  type?: typeof LinearGaugeType;
@@ -8966,6 +9110,7 @@ declare const LinearGaugeGroupType = "lineargroup";
8966
9110
  * {@page op.GaugeOptions#type}은 'lineargroup'이다.<br/>
8967
9111
  *
8968
9112
  * @config chart.gauge[type=lineargroup]
9113
+ * @modules gauge
8969
9114
  */
8970
9115
  interface LinearGaugeGroupOptions extends LinearGaugeGroupBaseOptions<LinearGaugeOptions> {
8971
9116
  type?: typeof LinearGaugeGroupType;
@@ -8984,51 +9129,6 @@ declare const GaugeTypes: {
8984
9129
  type GaugeType = typeof GaugeTypes[keyof typeof GaugeTypes];
8985
9130
  type GaugeOptionsType = LinearGaugeOptions | BulletGaugeOptions | CircleGaugeOptions | ClockGaugeOptions | LinearGaugeGroupOptions | BulletGaugeGroupOptions | CircleGaugeGroupOptions;
8986
9131
 
8987
- interface PaneOptions extends ChartItemOptions {
8988
- width?: number;
8989
- height?: number;
8990
- inverted?: boolean;
8991
- body: PaneBodyOptions;
8992
- }
8993
- interface PaneBodyOptions extends BodyOptions {
8994
- }
8995
- /**
8996
- * 다중 분할 panes.\
8997
- * 각 pane에 해당하는 x, y축이 반드시 존재해야 한다.
8998
- * axis는 {@page config.base.axis#row row}, {@page config.base.axis#col col} 속성으로 위치를 지정한다.
8999
- * 시리즈는 {@page config.base.series#row row}, {@page config.base.series#col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
9000
- * // 현재 문서 구조로 SeriesGroup을 가리킬 수 없음.
9001
- * // 시리즈그룹은 {@page SeriesGroup.row row}, {@page SeriesGroup.col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
9002
- *
9003
- * @config chart.split
9004
- */
9005
- interface SplitOptions extends ChartItemOptions {
9006
- /**
9007
- * @override
9008
- * @default false
9009
- */
9010
- visible?: boolean;
9011
- /**
9012
- * y축 방향 분할 수를 지정한다.<br/>
9013
- * //숫자로 지정하면 동일한 높이를 갖는 pane들로 표시된다.
9014
- * //배열로 지정하면 각 항목은 고정 크기 수자, 혹은 '*'로 끝나는 상대 크기.
9015
- *
9016
- */
9017
- rows?: number | (number | `${number}*` | '*')[];
9018
- /**
9019
- * x축 방향 분할 수를 지정한다.<br/>
9020
- * //숫자로 지정하면 동일한 너비를 갖는 pane들로 표시된다.
9021
- * //배열로 지정하면 각 항목은 고정 크기 수자, 혹은 '*'로 끝나는 상대 크기.
9022
- *
9023
- * @default false
9024
- */
9025
- cols?: number | (number | `${number}*` | '*')[];
9026
- /**
9027
- * @default 0
9028
- */
9029
- gap?: number;
9030
- }
9031
-
9032
9132
  /**
9033
9133
  * 차트 좌표계와 그 방향 및 시리즈와 게이지의 기본 타입을 결정하는 중요한 몇가지 속성들과
9034
9134
  * 하위 구성 요소들에 대한 옵션들을 설정한다.<br/>
@@ -9185,11 +9285,12 @@ interface IAssetOwner {
9185
9285
  declare class AssetCollection {
9186
9286
  private _items;
9187
9287
  private _map;
9188
- load(source: any): void;
9288
+ load(source: any): AssetOptionsType | AssetOptionsType[];
9189
9289
  updateOptions(source: any, render: boolean): void;
9190
9290
  register(doc: Document, owner: IAssetOwner): void;
9191
9291
  unregister(owner: IAssetOwner): void;
9192
9292
  get(id: string): AssetItem<AssetItemOptions>;
9293
+ get options(): AssetOptionsType[];
9193
9294
  private $_loadItem;
9194
9295
  }
9195
9296
 
@@ -9418,14 +9519,6 @@ declare abstract class GaugeLabel<OP extends GaugeLabelOptions = GaugeLabelOptio
9418
9519
  _domain: IRichTextDomain;
9419
9520
  protected _doPrepareRender(chart: IChart): void;
9420
9521
  }
9421
- /**
9422
- * {@page LinearGauge} 스케일 모델.<br/>
9423
- * {@page options} 모델은 {@page op.LinearGaugeScaleOptions}이다.<br/>
9424
- */
9425
- declare class LinearGaugeScale extends GaugeScale<LinearGaugeScaleOptions> {
9426
- _vertical: boolean;
9427
- _reversed: boolean;
9428
- }
9429
9522
  /**
9430
9523
  * {@page CircularGaugeLabel} 라벨 모델.<br/>
9431
9524
  * {@page options} 모델은 {@page op.CircularGaugeLabelOptions}이다.<br/>
@@ -9622,7 +9715,7 @@ declare class Exporter extends ChartItem<ExporterOptions> {
9622
9715
  compose(exporter: ChartExporter): void;
9623
9716
  isContextMenuVisible(): boolean;
9624
9717
  toggleContextMenu(): void;
9625
- exportToImage(dom: any, options: any, exporting: any): void;
9718
+ exportToImage(dom: HTMLElement, options: ExportOptions, exporting: ExporterOptions): void;
9626
9719
  }
9627
9720
 
9628
9721
  declare class NavigiatorHandle extends ChartItem<NavigiatorHandleOptions> {
@@ -9672,92 +9765,6 @@ declare class SeriesNavigator extends ChartItem<SeriesNavigatorOptions> {
9672
9765
  protected _doPrepareRender(chart: IChart): void;
9673
9766
  }
9674
9767
 
9675
- declare class PaneBody extends Body<PaneBodyOptions$1> {
9676
- pane: Pane;
9677
- static defaults: PaneBodyOptions$1;
9678
- constructor(pane: Pane);
9679
- base(): Body;
9680
- contains(obj: GaugeBase | Series): boolean;
9681
- }
9682
- declare class Pane extends ChartItem<PaneOptions> {
9683
- row: number;
9684
- col: number;
9685
- private _body;
9686
- constructor(chart: IChart, row: number, col: number);
9687
- protected _doInitChildren(op: {
9688
- [child: string]: ChartItemOptions;
9689
- }): void;
9690
- /**
9691
- * Body 모델.
9692
- */
9693
- get body(): PaneBody;
9694
- /**
9695
- */
9696
- width: number;
9697
- /**
9698
- */
9699
- height: number;
9700
- /**
9701
- */
9702
- inverted: boolean;
9703
- _prepareRender(): void;
9704
- }
9705
- /**
9706
- * 다중 분할 panes.<br/>
9707
- * 각 pane에 해당하는 x, y축이 반드시 존재해야 한다.
9708
- * axis는 {@page config.base.axis#row row}, {@page config.base.axis#col col} 속성으로 위치를 지정한다.
9709
- * 시리즈는 {@page config.base.series#row row}, {@page config.base.series#col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
9710
- * // 현재 문서 구조로 SeriesGroup을 가리킬 수 없음.
9711
- * // 시리즈그룹은 {@page SeriesGroup.row row}, {@page SeriesGroup.col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
9712
- */
9713
- declare class Split extends ChartItem<SplitOptions> {
9714
- static defaults: SplitOptions;
9715
- private _cols;
9716
- private _rows;
9717
- private _widths;
9718
- private _heights;
9719
- private _panes;
9720
- private _xAxes;
9721
- private _yAxes;
9722
- _vcols: number;
9723
- _vrows: number;
9724
- private _vwidths;
9725
- private _vheights;
9726
- private _vpanes;
9727
- count(): number;
9728
- rowCount(): number;
9729
- colCount(): number;
9730
- paneCount(): number;
9731
- getPane(row: number, col: number): Pane;
9732
- getRow(row: number): Pane[];
9733
- getColumn(col: number): Pane[];
9734
- protected _doLoadProp(prop: string, value: any): boolean;
9735
- protected _doSetSimple(source: any): boolean;
9736
- _load(source: any): ChartItem;
9737
- protected _doPrepareRender(chart: IChart): void;
9738
- getXLens(length: number): number[];
9739
- getYLens(length: number): number[];
9740
- layoutAxes(width: number, height: number, inverted: boolean, phase: number): void;
9741
- private $_calcAxesPoints;
9742
- calcAxesPoints(xLens: number[], yLens: number[]): void;
9743
- /**
9744
- * body들의 표시 크기를 계산한다.
9745
- */
9746
- calcSizes(width: number, height: number): void;
9747
- getAnnotation(name: string): Annotation;
9748
- /**
9749
- * number | (`${number}*` | '*')[] // '*'은 '1*'과 동일.
9750
- */
9751
- private $_parseSizes;
9752
- private $_parsePanes;
9753
- private $_loadPanes;
9754
- /**
9755
- * 축이 연결되지 않은 pane들은 skip한다.
9756
- */
9757
- private $_collectPanes;
9758
- private $_calcSizes;
9759
- }
9760
-
9761
9768
  /**
9762
9769
  * 차트 제목(title) 모델.<br/>
9763
9770
  * 설정 {@page options 옵션}은 {@page op.TitleOptions}이고,
@@ -9807,6 +9814,10 @@ declare class Subtitle extends Title<SubtitleOptions> {
9807
9814
  static defaults: SubtitleOptions;
9808
9815
  }
9809
9816
 
9817
+ interface ISplit extends ChartItem<SplitOptions> {
9818
+ getAnnotation(name: string): Annotation;
9819
+ prepareRender(xAxes: AxisCollection, yAxes: AxisCollection): void;
9820
+ }
9810
9821
  interface IChart {
9811
9822
  options: ChartConfiguration;
9812
9823
  type?: string;
@@ -9814,8 +9825,6 @@ interface IChart {
9814
9825
  startOfWeek?: number;
9815
9826
  timeOffset?: number;
9816
9827
  _assets: AssetCollection;
9817
- _xPaneAxes: PaneXAxisMatrix;
9818
- _yPaneAxes: PaneYAxisMatrix;
9819
9828
  _chartOptions: ChartOptions;
9820
9829
  first: IPlottingItem;
9821
9830
  firstSeries: Series;
@@ -9825,7 +9834,7 @@ interface IChart {
9825
9834
  _legend: Legend;
9826
9835
  _tooltip: Tooltip;
9827
9836
  _body: Body;
9828
- _split: Split;
9837
+ _split: ISplit;
9829
9838
  _seriesIndex: number;
9830
9839
  _createChart(config: any): IChart;
9831
9840
  loadBase(source: any, model: string, type: string): any;
@@ -9923,6 +9932,9 @@ declare enum SectionDir {
9923
9932
  * @internal
9924
9933
  */
9925
9934
  declare class ChartObject extends EventProvider<IChartEventListener> implements IChart, ITooltipOwner, IAnnotationOwner {
9935
+ private static split_class;
9936
+ private static gauge_class;
9937
+ static registerSplitClass(clazz: any): void;
9926
9938
  private static defaults;
9927
9939
  options: ChartConfiguration;
9928
9940
  private _bases;
@@ -9939,9 +9951,7 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
9939
9951
  private _series;
9940
9952
  private _xAxes;
9941
9953
  private _yAxes;
9942
- _split: Split;
9943
- _xPaneAxes: PaneXAxisMatrix;
9944
- _yPaneAxes: PaneYAxisMatrix;
9954
+ _split: ISplit;
9945
9955
  private _gauges;
9946
9956
  _body: Body;
9947
9957
  _annotations: AnnotationCollection;
@@ -9964,7 +9974,7 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
9964
9974
  getTooltipContext(scope: TooltipScope, series: ISeries, point: DataPoint): ITooltipContext;
9965
9975
  get chart(): IChart;
9966
9976
  anchorByName(name: string): ChartItem;
9967
- get type(): "area" | "line" | "linegroup" | "spline" | "bellcurve" | "areagroup" | "barrange" | "bar" | "bargroup" | "piegroup" | "pie" | "boxplot" | "bubble" | "bump" | "candlestick" | "ohlc" | "circlebar" | "circlebargroup" | "dumbbell" | "equalizer" | "errorbar" | "funnel" | "heatmap" | "histogram" | "arearange" | "lollipop" | "pareto" | "scatter" | "treemap" | "vector" | "waterfall";
9977
+ get type(): "area" | "line" | "linegroup" | "spline" | "bellcurve" | "areagroup" | "barrange" | "bar" | "bargroup" | "piegroup" | "pie" | "boxplot" | "bubble" | "bump" | "candlestick" | "ohlc" | "circlebar" | "circlebargroup" | "dumbbell" | "equalizer" | "errorbar" | "funnel" | "histogram" | "arearange" | "lollipop" | "pareto" | "scatter" | "waterfall" | "treemap" | "heatmap" | "vector";
9968
9978
  get gaugeType(): "circle" | "linear" | "bullet" | "clock";
9969
9979
  get polar(): boolean;
9970
9980
  get inverted(): boolean;
@@ -10206,6 +10216,7 @@ declare class Chart {
10206
10216
  * @readonly
10207
10217
  */
10208
10218
  get polar(): boolean;
10219
+ get assets(): AssetCollection;
10209
10220
  /**
10210
10221
  * 차트 전역 속성 모델.<br/>
10211
10222
  */
@@ -10255,7 +10266,7 @@ declare class Chart {
10255
10266
  /**
10256
10267
  * Split 설정 모델.
10257
10268
  */
10258
- get split(): Split;
10269
+ get split(): ISplit | undefined;
10259
10270
  /**
10260
10271
  * 시리즈 내비게이터 모델.
10261
10272
  */
@@ -10584,79 +10595,125 @@ declare class Globals {
10584
10595
  static createData(options?: ChartDataOptions, rows?: any[]): ChartData;
10585
10596
  }
10586
10597
 
10587
- /**
10588
- * 카테고리축의 tick 모델.<br/>
10589
- * {@page options} 모델은 {@page op.CategoryAxisTickOptions}이다.
10590
- */
10591
- declare class CategoryAxisTick extends AxisTick<CategoryAxisTickOptions> {
10592
- static defaults: CategoryAxisTickOptions;
10593
- getPosition(): CategoryTickPosition;
10598
+ declare class ButtonElement extends RcElement {
10599
+ static readonly STYLE = "rct-button";
10600
+ static readonly BACK_STYLE = "rct-button-background";
10601
+ private _back;
10602
+ private _textView;
10603
+ constructor(doc: Document, text: string, style?: string);
10604
+ setText(text: string): void;
10605
+ layout(style?: SVGStyleOrClass): void;
10606
+ click(): boolean;
10607
+ setVis(value: boolean): boolean;
10594
10608
  }
10595
- /**
10596
- * @internal
10597
- *
10598
- * 카테고리축의 라벨 모델.<br/>
10599
- * {@page options} 모델은 {@page op.AxisLabelOptions}이다.
10600
- */
10601
- declare class CategoryAxisLabel extends AxisLabel<AxisLabelOptions> {
10602
- getTick(index: number, v: any): string;
10603
- getIcon(tick: IAxisTick): string;
10609
+
10610
+ interface IRectShape extends IRect {
10611
+ r?: number;
10612
+ rx?: number;
10613
+ ry?: number;
10614
+ rLeft?: number;
10615
+ rTop?: number;
10616
+ rRight?: number;
10617
+ rBottom?: number;
10618
+ }
10619
+ declare class RectElement extends RcElement {
10620
+ static create(doc: Document, styleName: string, x: number, y: number, width: number, height: number, r?: number): RectElement;
10621
+ private _rect;
10622
+ constructor(doc: Document, styleName?: string, rect?: IRectShape);
10623
+ /** rect */
10624
+ get rect(): IRectShape;
10625
+ set rect(value: IRectShape);
10626
+ resizeRect(width: number, height: number): RcElement;
10627
+ setBounds(x: number, y: number, width: number, height: number, r?: number): RectElement;
10628
+ setBox(x: number, y: number, width: number, height: number): void;
10629
+ setRadius(value: number): void;
10630
+ }
10631
+
10632
+ declare abstract class GroupElement extends RcElement {
10633
+ private static IGNORE_ATTRS;
10634
+ constructor(doc: Document, styleName?: string);
10635
+ setAttr(attr: string, value: any): RcElement;
10636
+ protected _doInitChildren(doc: Document): void;
10637
+ }
10638
+
10639
+ declare abstract class ChartElement<T extends ChartItem = ChartItem> extends RcElement {
10640
+ model: T;
10641
+ protected options: ChartItemOptions;
10642
+ mw: number;
10643
+ mh: number;
10644
+ _debugRect: RectElement;
10645
+ constructor(doc: Document, styleName?: any);
10646
+ chart(): IChart;
10647
+ protected _prepareStyleOrClass(model: T): void;
10648
+ setModel(model: T): void;
10649
+ measure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): Size;
10650
+ layout(param?: any): ChartElement;
10651
+ resizeByMeasured(): ChartElement;
10652
+ protected _getDebugRect(): IRect;
10653
+ protected _doMeasure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): Size;
10654
+ protected _doLayout(param: any): void;
10655
+ protected _invalidate(): void;
10656
+ }
10657
+ declare abstract class BoundableElement<T extends ChartItem> extends ChartElement<T> {
10658
+ protected _background: RectElement;
10659
+ /**
10660
+ * @TODO padding, margin config 선언부가 없다
10661
+ */
10662
+ protected _margins: Sides;
10663
+ protected _paddings: Sides;
10664
+ constructor(doc: Document, styleName: string, backStyle: string);
10665
+ protected _getDebugRect(): IRect;
10666
+ measure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): Size;
10667
+ layout(param?: any): ChartElement;
10668
+ protected abstract _setBackgroundStyle(back: RectElement): void;
10669
+ protected _marginable(): boolean;
10670
+ protected _resetBackBounds(): boolean;
10671
+ protected _getBackOffset(): number;
10672
+ protected _deflatePaddings(size: Size): void;
10604
10673
  }
10605
10674
  /**
10606
10675
  * @internal
10607
- *
10608
- * 카테고리축의 grid 모델.<br/>
10609
- * {@page options} 모델은 {@page op.AxisGridOptions}이다.
10610
10676
  */
10611
- declare class CategoryAxisGrid extends AxisGrid<AxisGridOptions> {
10612
- getPoints(axis: CategoryAxis): number[];
10677
+ declare abstract class SectionView extends GroupElement {
10678
+ protected _inverted: boolean;
10679
+ mw: number;
10680
+ mh: number;
10681
+ measure(doc: Document, chart: ChartObject, hintWidth: number, hintHeight: number, phase: number): Size;
10682
+ resizeByMeasured(): SectionView;
10683
+ layout(param?: any): SectionView;
10684
+ protected abstract _doMeasure(doc: Document, chart: ChartObject, hintWidth: number, hintHeight: number, phase: number): Size;
10685
+ protected abstract _doLayout(param?: any): void;
10686
+ protected _setInverted(inverted: boolean): void;
10687
+ }
10688
+ declare abstract class ContentView<T extends ChartItem> extends ChartElement<T> {
10689
+ protected _inverted: boolean;
10690
+ protected _animatable: boolean;
10691
+ protected _loadAnimatable: boolean;
10692
+ _setChartOptions(inverted: boolean, animatable: boolean, loadAnimatable: boolean): void;
10613
10693
  }
10614
- /**
10615
- * 카테고리 축 모델.<br/>
10616
- * {@page op.AxisOptions#type}은 {@page config.xAxis.category 'category'}이고,
10617
- * {@page options 설정} 모델은 {@page op.CategoryAxisOptions}이다.
10618
- */
10619
- declare class CategoryAxis extends Axis<CategoryAxisOptions> {
10620
- static type: string;
10621
- static defaults: CategoryAxisOptions;
10622
- _categories: {
10623
- c: string;
10624
- t: string;
10625
- w: number;
10626
- i?: string;
10627
- }[];
10628
- _cats: string[];
10629
- _weights: number[];
10630
- _len: number;
10631
- private _map;
10632
- private _catPad;
10633
- private _catMin;
10634
- private _catMax;
10635
- private _catLen;
10636
- _pts: number[];
10637
- _tstep: number;
10638
- get tick(): CategoryAxisTick;
10639
- getCategories(): string[];
10640
- xValueAt(pos: number): number;
10641
- getWdith(length: number, category: number): number;
10642
- _type(): string;
10643
- unitPad(): number;
10644
- continuous(): boolean;
10645
- protected _createGrid(): CategoryAxisGrid;
10646
- protected _createTickModel(): CategoryAxisTick;
10647
- protected _createLabel(): CategoryAxisLabel;
10648
- collectValues(): void;
10649
- getStartAngle(): number;
10650
- protected _doPrepareRender(): void;
10651
- protected _doBuildTicks(min: number, max: number, length: number): IAxisTick[];
10652
- _calcPoints(length: number, phase: number): void;
10653
- getPos(length: number, value: number): number;
10654
- valueAt(length: number, pos: number): number;
10655
- getUnitLen(length: number, value: number): number;
10656
- getLabelLength(length: number, value: number): number;
10657
- getValue(value: any): number;
10658
- getXValue(value: number): any;
10659
- private $_collectCategories;
10694
+
10695
+ interface IAnnotationAnchorOwner {
10696
+ getAnnotationAnchor(model: any): RcElement;
10697
+ tx: number;
10698
+ ty: number;
10699
+ }
10700
+ /**
10701
+ * [주의] clipping하기 위해 translate를 background와 내부 view에 설정한다.
10702
+ */
10703
+ declare abstract class AnnotationView<T extends Annotation = Annotation> extends BoundableElement<T> {
10704
+ static readonly CLASS_NAME: string;
10705
+ static register(...clses: [typeof Annotation<AnnotationOptions>, typeof AnnotationView<Annotation>][]): void;
10706
+ protected options: AnnotationOptions;
10707
+ constructor(doc: Document, styleName: string);
10708
+ update(owner: IAnnotationAnchorOwner, hintWidth: number, hintHeight: number): void;
10709
+ _layoutView(invertd: boolean, owner: IAnnotationAnchorOwner, x: number, y: number, w: number, h: number): void;
10710
+ private _posByAnchor;
10711
+ protected _marginable(): boolean;
10712
+ protected _resetBackBounds(): boolean;
10713
+ protected _setBackgroundStyle(back: RectElement): void;
10714
+ protected _doLayout(p: Point): void;
10715
+ setRotation(originX: number, originY: number, rotation: number): RcElement;
10716
+ protected _setRotation(originX: number, originY: number, rotation: number): void;
10660
10717
  }
10661
10718
 
10662
10719
  /**
@@ -10840,1435 +10897,1604 @@ declare class LinearAxis extends ContinuousAxis<LinearAxisOptions> {
10840
10897
  };
10841
10898
  }
10842
10899
 
10843
- /**
10844
- * @internal
10845
- * 시간축의 tick 모델.<br/>
10846
- * {@page options} 모델은 {@page op.LinearGaugeLabelOptions}이다.
10847
- *
10848
- * [주의] javascript에서 숫자값을 Date로 변환하거나, Date를 숫자로 변환할 때는 모두 new Date가 기준이 된다.
10849
- */
10850
- declare class TimeAxisTick extends ContinuousAxisTick<TimeAxisTickOptions> {
10851
- _scale: number;
10852
- getNextStep(curr: number, delta: number): number;
10853
- protected _isValidInterval(v: any): boolean;
10854
- protected _getStepMultiples(step: number): number[];
10855
- protected _getStepsByPixels(length: number, pixels: number, base: number, min: number, max: number): number[];
10856
- protected _getStepsByInterval(interval: any, base: number, min: number, max: number): number[];
10857
- }
10858
- /**
10859
- * 시간축 라벨 모델.<br/>
10860
- * {@page options} 모델은 {@page op.TimeAxisLabelOptions}이다.
10861
- */
10862
- declare class TimeAxisLabel extends ContinuousAxisLabel<TimeAxisLabelOptions> {
10863
- static defaults: TimeAxisLabelOptions;
10864
- private _formats;
10865
- private _formatter;
10866
- protected _doApply(options: TimeAxisLabelOptions): void;
10867
- getTick(index: number, v: any): string;
10868
- }
10869
- /**
10870
- * 날짜/시간 축 모델.<br/>
10871
- * {@page op.AxisOptions#type}은 {@page config.xAxis.time 'time'}이고,
10872
- * {@page options 설정} 모델은 {@page op.TimeAxisOptions}이다.
10873
- */
10874
- declare class TimeAxis extends ContinuousAxis<TimeAxisOptions> {
10875
- static type: string;
10876
- static subtype: string;
10877
- static defaults: TimeAxisOptions;
10878
- _offset: number;
10900
+ declare class ImageElement extends RcElement {
10879
10901
  /**
10880
- * @override
10902
+ * onload 처리 이후 false로 변경한다.
10881
10903
  */
10882
- get label(): TimeAxisLabel;
10883
- protected _createTickModel(): TimeAxisTick;
10884
- protected _createLabel(): TimeAxisLabel;
10885
- collectValues(): void;
10886
- getValue(value: any): number;
10887
- incStep(value: number, step: any): number;
10888
- date(value: number): Date;
10889
- axisValueAt(length: number, pos: number): any;
10890
- value2Tooltip(value: number): any;
10891
- getXValue(value: number): number | Date;
10892
- }
10893
-
10894
- /**
10895
- * 로그축의 tick 모델.<br/>
10896
- * {@page options} 모델은 {@page op.LogAxisTickOptions}이다.
10897
- */
10898
- declare class LogAxisTick extends ContinuousAxisTick<LogAxisTickOptions> {
10899
- static defaults: LogAxisTickOptions;
10900
- canUseNumSymbols(): boolean;
10901
- protected _getStepMultiples(scale: number): number[];
10904
+ private _dirty;
10905
+ private _bounds;
10906
+ private _isImageLoaded;
10902
10907
  /**
10903
- * 소수점을 갖는 step들을 역로그된 값이 최대한 정수가 되게 조정한다.
10908
+ * @IE11 not support SVGImageElement onload
10909
+ * 사이즈를 알기위해서 이벤트만 사용한다.
10904
10910
  */
10905
- _normalizeSteps(steps: number[], min: number, max: number): number[];
10911
+ private _proxy;
10912
+ /**
10913
+ * @IE11 image proxy onload event
10914
+ */
10915
+ onloadProxy: () => void;
10916
+ constructor(doc: Document, full: boolean, styleName?: string);
10917
+ /** image url */
10918
+ get url(): string;
10919
+ set url(value: string);
10920
+ setImage(url: string, width: number, height: number): boolean;
10921
+ getBBox(): IRect;
10922
+ resize(width: number, height: number, attr?: boolean): boolean;
10906
10923
  }
10924
+
10907
10925
  /**
10908
- * 로그축 모델.<br/>
10909
- * {@page op.AxisOptions#type}은 {@page config.xAxis.log 'log'}이고,
10910
- * {@page options 설정} 모델은 {@page op.LogAxisOptions}이다.
10926
+ * ChartText를 표시하는 텍스트 view.
10911
10927
  */
10912
- declare class LogAxis extends ContinuousAxis<LogAxisOptions> {
10913
- static type: string;
10914
- protected _createLabel(): ContinuousAxisLabel;
10915
- protected _createTickModel(): LogAxisTick;
10916
- collectValues(): void;
10917
- /**
10918
- * 내부에서는 log 값들을 사용하고...
10919
- */
10920
- getPos(length: number, value: number): number;
10921
- protected _doCalculateRange(values: number[]): {
10922
- min: number;
10923
- max: number;
10924
- };
10925
- /**
10926
- * 화면 표시는 역log 값들을 사용한다.
10927
- */
10928
- protected _createTick(length: number, index: number, step: number): IAxisTick;
10929
- protected _calcUnitLen(vals: number[], length: number, axisMin: number, axisMax: number): {
10930
- len: number;
10931
- min: number;
10932
- };
10928
+ declare class ChartTextElement extends GroupElement {
10929
+ private _back;
10930
+ _outline: TextElement;
10931
+ _text: TextElement;
10932
+ _icon: ImageElement;
10933
+ private _model;
10934
+ constructor(doc: Document, styleName?: string);
10935
+ /** text */
10936
+ get text(): string;
10937
+ setText(s: string): ChartTextElement;
10938
+ setModel(doc: Document, model: IconedText, icon: string, contrastTarget: Element): ChartTextElement;
10939
+ setContrast(target: Element): ChartTextElement;
10940
+ layout(align: Align): ChartTextElement;
10941
+ trans(x: number, y: number): ChartTextElement;
10933
10942
  }
10934
10943
 
10935
- interface IPointPos {
10936
- px: number;
10937
- py: number;
10938
- isNull?: boolean;
10939
- range?: ValueRange;
10944
+ type Visitor<T extends RcElement> = (element: T, index?: number, count?: number) => void;
10945
+ /** @internal */
10946
+ declare class ElementPool<T extends RcElement> extends RcObject {
10947
+ removeDelay: number;
10948
+ private _owner;
10949
+ private _creator;
10950
+ private _pool;
10951
+ private _views;
10952
+ private _removes;
10953
+ private _styleName;
10954
+ constructor(owner: RcElement, creator: {
10955
+ new (doc: Document, styleName?: string): T;
10956
+ }, styleName?: string, removeDelay?: number);
10957
+ protected _doDestroy(): void;
10958
+ get isEmpty(): boolean;
10959
+ get count(): number;
10960
+ get first(): T;
10961
+ get last(): T;
10962
+ get(index: number): T;
10963
+ getAll(): T[];
10964
+ pull(index: number): T;
10965
+ _internalItems(): T[];
10966
+ elementOf(dom: Element): T;
10967
+ find(matcher: (v: T) => boolean): T;
10968
+ setRemoveDelay(v: number): ElementPool<T>;
10969
+ removeLater(v: RcElement, duration: number): void;
10970
+ private $_create;
10971
+ prepare(count: number, visitor?: Visitor<T>, initor?: Visitor<T>): ElementPool<T>;
10972
+ /**
10973
+ * 기존 view를 재활용하도록 한다.
10974
+ * objProp가 설정되지 않으면 objs의 개별 obj 자체외 비교한다.
10975
+ */
10976
+ borrow(): T;
10977
+ free(element: T, removeDelay?: number): void;
10978
+ freeAll(elements?: T[], removeDelay?: number): void;
10979
+ freeHiddens(): void;
10980
+ freeFrom(from: number): void;
10981
+ forEach(visitor: (v: T, i?: number, count?: number) => void): void;
10982
+ visit(visitor: (v: T, i: number, count: number) => boolean): boolean;
10983
+ sort(compare: (v1: T, v2: T) => number): ElementPool<T>;
10984
+ map(callback: (v: T) => any): any[];
10985
+ front(v: T): void;
10986
+ back(v: T): void;
10940
10987
  }
10941
- type PointLine = IPointPos[];
10942
- declare class LineSeriesPoint extends DataPoint {
10943
- radius: number;
10944
- shape: Shape;
10945
- px: number;
10946
- py: number;
10947
- toPoint(): IPointPos;
10988
+
10989
+ interface IPoint2 {
10990
+ x1: number;
10991
+ y1: number;
10992
+ x2: number;
10993
+ y2: number;
10994
+ }
10995
+ declare class PathBuilder {
10996
+ _path: (string | number)[];
10997
+ length(): number;
10998
+ isEmpty(): boolean;
10999
+ clear(): PathBuilder;
11000
+ reset(x: number | Point, y?: number): PathBuilder;
11001
+ end(close?: boolean): string;
11002
+ close(clear: boolean): string;
11003
+ move(x: number | Point, y?: number): PathBuilder;
11004
+ moveBy(x: number | Point, y?: number): PathBuilder;
11005
+ line(x: number | Point, y?: number): PathBuilder;
11006
+ moveOrLine(connected: boolean, x: number, y: number): PathBuilder;
11007
+ vline(x: number, y1: number, y2: number): PathBuilder;
11008
+ hline(y: number, x1: number, x2: number): PathBuilder;
11009
+ curve(cx1: number, cy1: number, cx2: number, cy2: number, x: number, y: number): PathBuilder;
11010
+ quad(x1: number | IPoint2, y1?: number, x2?: number, y2?: number): PathBuilder;
11011
+ rect(x: number, y: number, width: number, height: number): PathBuilder;
11012
+ lines(...pts: (number | Point)[]): PathBuilder;
11013
+ polygon(...pts: (number | Point)[]): PathBuilder;
11014
+ circle(cx: number, cy: number, rd: number): PathBuilder;
11015
+ getMove(p?: number, remove?: boolean): Point;
11016
+ getLine(p?: number, remove?: boolean): Point;
11017
+ getQuad(p?: number, remove?: boolean): IPoint2;
11018
+ getPoints(p: number, count: number, remove?: boolean): Point[];
10948
11019
  }
11020
+
10949
11021
  /**
10950
- * 데이터 포인트 maker 설정 정보.
11022
+ * @internal
10951
11023
  */
10952
- declare class LineSeriesMarker extends SeriesMarker<LineSeriesMarkerOptions> {
10953
- static defaults: LineSeriesMarkerOptions;
10954
- }
10955
- declare class LinePointLabel extends DataPointLabel<LinePointLabelOptions> {
10956
- static readonly ALIGN_GAP = 4;
10957
- static defaults: LinePointLabelOptions;
10958
- getAlignOffset(): number;
11024
+ declare class LegendItemView extends ChartElement<LegendItem> {
11025
+ _back: RectElement;
11026
+ _marker: RcElement;
11027
+ _label: TextElement;
11028
+ _gap: number;
11029
+ _rMarker: IRect;
11030
+ _col: number;
11031
+ constructor(doc: Document);
11032
+ setMarker(elt: RcElement): RcElement;
11033
+ protected _doMeasure(doc: Document, model: LegendItem, hintWidth: number, hintHeight: number, phase: number): Size;
11034
+ protected _doLayout(wMarker: number): void;
11035
+ }
11036
+
11037
+ declare class MarkerHoverAnimation extends RcAnimation {
11038
+ private _sv;
11039
+ _focused: boolean;
11040
+ _marker: MarkerSeriesPointView;
11041
+ constructor(sv: SeriesView<Series>, marker: MarkerSeriesPointView, focused: boolean, endHandler: RcAnimationEndHandler);
11042
+ protected _doStart(): void;
11043
+ protected _doUpdate(rate: number): boolean;
11044
+ protected _doStop(): void;
11045
+ }
11046
+ interface IPointView {
11047
+ point: DataPoint;
11048
+ getTooltipPos?(): Point;
11049
+ saveStyles(): void;
11050
+ restoreStyles(): void;
11051
+ }
11052
+ declare class PointLabelView extends ChartTextElement {
11053
+ point: DataPoint;
11054
+ constructor(doc: Document);
11055
+ }
11056
+ declare class PointLabelContainer extends LayerElement {
11057
+ private _labels;
11058
+ private _maps;
11059
+ _textAlign: Align;
11060
+ constructor(doc: Document);
11061
+ clear(): void;
11062
+ getWidth(index: number): number;
11063
+ prepareLabel(doc: Document, view: PointLabelView, index: number, p: DataPoint, series: Series, model: DataPointLabel): void;
11064
+ prepare(doc: Document, owner: SeriesView<Series>): void;
11065
+ get(point: DataPoint, index: number): PointLabelView;
11066
+ removePoint(p: DataPoint, delay: number): void;
11067
+ private $_checkIntersects;
11068
+ dedupe(views: PointLabelView[], lines: PointLabelLineContainer, mode: PointLabelDedupeMode): void;
11069
+ arrangeVertical(views: PointLabelView[], lines: PointLabelLineContainer, height: number, converge: boolean, dedupeMode: PointLabelDedupeMode, overflow: PointLabelOverflow): 0 | 1;
11070
+ }
11071
+ declare class PointLabelLineView extends GroupElement {
11072
+ point: DataPoint;
11073
+ private _line;
11074
+ constructor(doc: Document);
11075
+ setLine(line: string | any[]): void;
11076
+ }
11077
+ declare class PointLabelLineContainer extends GroupElement {
11078
+ private _lines;
11079
+ private _map;
11080
+ constructor(doc: Document);
11081
+ prepare(model: Series): void;
11082
+ get(point: DataPoint): PointLabelLineView;
11083
+ }
11084
+ declare class PointContainer extends LayerElement {
11085
+ inverted: boolean;
11086
+ invert(v: boolean, height: number): boolean;
11087
+ }
11088
+ type LabelLayoutInfo = {
11089
+ inverted: boolean;
11090
+ reversed: boolean;
11091
+ pointView: RcElement;
11092
+ x: number;
11093
+ y: number;
11094
+ hPoint: number;
11095
+ wPoint: number;
11096
+ labelView: PointLabelView;
11097
+ labelPos: PointLabelPosition;
11098
+ labelOff: number;
11099
+ textAlign: Align;
11100
+ };
11101
+ declare abstract class SeriesView<T extends Series = Series> extends ContentView<T> {
11102
+ static readonly POINT_CLASS = "rct-point";
11103
+ static readonly DATA_FOCUS = "focus";
11104
+ static readonly DATA_UNFOCUS = "unfocus";
11105
+ static readonly DATA_UNHOVER = "unhover";
11106
+ static readonly LEGEND_MARKER = "rct-legend-item-marker";
11107
+ static register(...clses: [typeof Series<SeriesOptions>, typeof SeriesView<Series>][]): void;
11108
+ _simpleMode: boolean;
11109
+ protected _pointContainer: PointContainer;
11110
+ _labelContainer: PointLabelContainer;
11111
+ private _trendLineView;
11112
+ protected _legendMarker: RcElement;
11113
+ protected _visPoints: DataPoint[];
11114
+ private _growRate;
11115
+ private _posRate;
11116
+ protected _prevRate: number;
11117
+ _animations: Animation[];
11118
+ _hoverAnis: MarkerHoverAnimation[];
11119
+ _hoverPts: IPointView[];
11120
+ constructor(doc: Document, styleName: string);
11121
+ clipInvertable(): boolean;
11122
+ getClipContainer(): RcElement;
11123
+ getClipContainer2(): RcElement;
11124
+ defaultAnimation(): string;
11125
+ setGrowRate(rate: number): void;
11126
+ setPosRate(rate: number): void;
11127
+ setPrevRate(rate: number): void;
11128
+ isPointLabelVisible(p: DataPoint): boolean;
11129
+ protected _doViewRateChanged(rate: number): void;
11130
+ protected _doPosRateChanged(rate: number): void;
11131
+ protected _doPrevRateChanged(rate: number): void;
11132
+ _animationStarted(ani: Animation): void;
11133
+ _animationFinished(ani: Animation): void;
11134
+ protected abstract _getPointPool(): ElementPool<RcElement>;
11135
+ pointByDom(elt: Element): IPointView;
11136
+ getPointView(p: DataPoint): RcElement;
11137
+ clicked(elt: Element): void;
11138
+ protected _doPointClicked(view: IPointView): void;
11139
+ prepareSeries(doc: Document, model: T): void;
11140
+ protected _setModelColor(color: string): void;
11141
+ protected _legendColorProp(): string;
11142
+ needDecoreateLegend(): boolean;
11143
+ decoreateLegend(legendView: LegendItemView): void;
11144
+ afterLayout(): void;
11145
+ setHoverStyle(pv: RcElement): void;
11146
+ hoverPoint(p: DataPoint): void;
11147
+ protected _clearHoverClasses(pv: RcElement): void;
11148
+ focusPoints(pvs: IPointView[]): void;
11149
+ protected _needFocusOrder(): boolean;
11150
+ getPointsAt(axis: Axis, pos: number): IPointView[];
11151
+ getSiblings(pv: IPointView): IPointView[];
11152
+ getSibling(pv: IPointView): IPointView;
11153
+ applyAutoRotation(view: PointLabelView, a: number, total: number, totalAngle: number): void;
11154
+ protected _doAttached(parent: RcElement): void;
11155
+ protected _prepareStyleOrClass(model: T): void;
11156
+ protected _prepareViewRanges(model: T): void;
11157
+ protected _doMeasure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): Size;
11158
+ protected _doLayout(): void;
11159
+ protected _doAfterLayout(): void;
11160
+ protected abstract _prepareSeries(doc: Document, model: T): void;
11161
+ protected abstract _renderSeries(width: number, height: number): void;
11162
+ protected _collectVisPoints(model: T): DataPoint[];
11163
+ private $_setColorIndex;
11164
+ protected _setPointColor(v: RcElement, color: string): void;
11165
+ protected _setPointStyle(v: RcElement, model: T, p: DataPoint, styles?: any[]): void;
11166
+ protected _labelViews(): PointLabelContainer;
11167
+ protected _getGrowRate(): number;
11168
+ _animating(): boolean;
11169
+ protected _lazyPrepareLabels(): boolean;
11170
+ protected _getShowAnimation(): RcAnimation;
11171
+ protected _runShowEffect(firstTime: boolean): void;
11172
+ protected _drawSpline(pts: {
11173
+ px: number;
11174
+ py: number;
11175
+ }[], start: number, end: number, sb: PathBuilder): void;
11176
+ private $_renderTrendline;
11177
+ protected _layoutLabel(info: LabelLayoutInfo, w: number, h: number): void;
11178
+ protected _clipRange(w: number, h: number, rangeAxis: 'x' | 'y' | 'z', range: ValueRange, clip: ClipRectElement, inverted: boolean): void;
11179
+ protected _setFill(elt: RcElement, style: SVGStyleOrClass): void;
11180
+ protected _savePrevs(): void;
11181
+ }
11182
+ declare abstract class PointElement extends PathElement implements IPointView {
11183
+ point: DataPoint;
11184
+ constructor(doc: Document);
11185
+ savePrevs(): void;
11186
+ }
11187
+ declare abstract class MarkerSeriesPointView extends PointElement implements IPointView {
11188
+ beginHover(series: SeriesView<Series>, focused: boolean): void;
11189
+ setHoverRate(series: SeriesView<Series>, focused: boolean, rate: number): void;
11190
+ endHover(series: SeriesView<Series>, focused: boolean): void;
11191
+ distance(rd: number, x: number, y: number): number;
11192
+ }
11193
+ declare abstract class MarkerSeriesView<T extends MarkerSeries, P extends DataPoint> extends SeriesView<T> {
11194
+ private static _createDrawers;
11195
+ private static _drawers;
11196
+ protected _markers: ElementPool<MarkerSeriesPointView>;
11197
+ constructor(doc: Document, styleName: string);
11198
+ protected abstract _createMarkers(container: PointContainer): ElementPool<MarkerSeriesPointView>;
11199
+ getHintDistance(): number;
11200
+ protected _getPointPool(): ElementPool<RcElement>;
11201
+ clipInvertable(): boolean;
11202
+ getPointsAt(axis: Axis, pos: number): IPointView[];
11203
+ protected abstract _getAutoPos(overflowed: boolean): PointLabelPosition;
11204
+ _getDrawer(shape: string): (rd: number) => (string | number)[];
11205
+ protected _layoutLabelView(labelView: PointLabelView, pos: PointLabelPosition, off: number, radius: number, x: number, y: number): void;
11206
+ }
11207
+ declare class ZombiAnimation extends RcAnimation {
11208
+ series: WidgetSeriesView<WidgetSeries>;
11209
+ constructor(series: WidgetSeriesView<WidgetSeries>, duration: number);
11210
+ protected _doUpdate(rate: number): boolean;
11211
+ protected _doStop(): void;
11212
+ }
11213
+ declare abstract class WidgetSeriesView<T extends WidgetSeries> extends SeriesView<T> {
11214
+ private _willZombie;
11215
+ _zombie: DataPoint;
11216
+ _zombieRate: number;
11217
+ _zombieAni: ZombiAnimation;
11218
+ togglePointVisible(p: DataPoint): void;
11219
+ isPointLabelVisible(p: WidgetSeriesPoint): boolean;
11220
+ protected _collectVisPoints(model: T): DataPoint[];
11221
+ protected _prepareSeries(doc: Document, model: T): void;
11222
+ _resizeZombie(): void;
11223
+ protected _createPointLegendMarker(doc: Document, p: DataPoint, size: number): RcElement;
11224
+ protected _preparePoint(doc: Document, model: T, p: WidgetSeriesPoint, pv: RcElement): void;
11225
+ }
11226
+
11227
+ declare abstract class AxisGuideView<T extends AxisGuide = AxisGuide> extends RcElement {
11228
+ model: T;
11229
+ protected _labelView: ChartTextElement;
11230
+ constructor(doc: Document);
11231
+ vertical(): boolean;
11232
+ prepare(doc: Document, model: T): void;
11233
+ layout(width: number, height: number, polar?: IPolar): void;
11234
+ abstract _doLayout(width: number, height: number): void;
11235
+ abstract _doLayoutPolar(width: number, height: number, polar: IPolar): void;
11236
+ }
11237
+ declare class AxisGuideLineView extends AxisGuideView<AxisLineGuide> {
11238
+ private _line;
11239
+ constructor(doc: Document, polar: boolean);
11240
+ prepare(doc: Document, model: AxisLineGuide): void;
11241
+ _doLayout(width: number, height: number): void;
11242
+ _doLayoutPolar(width: number, height: number, polar: IPolar): void;
11243
+ }
11244
+ declare class AxisGuideRangeView extends AxisGuideView<AxisRangeGuide> {
11245
+ private _box;
11246
+ _range: [number, number];
11247
+ constructor(doc: Document, polar: boolean);
11248
+ prepare(doc: Document, model: AxisRangeGuide): void;
11249
+ _doLayout(width: number, height: number): void;
11250
+ _doLayoutPolar(width: number, height: number, polar: IPolar): void;
11251
+ }
11252
+ declare class AxisGridRowContainer extends LayerElement {
11253
+ private _views;
11254
+ private _rows;
11255
+ prepare(): void;
11256
+ addAll(doc: Document, axes: Axis[]): void;
11257
+ layout(width: number, height: number, polar: boolean): void;
11258
+ }
11259
+ declare class AxisGuideContainer extends LayerElement {
11260
+ _linePool: AxisGuideLineView[];
11261
+ _rangePool: AxisGuideRangeView[];
11262
+ _views: AxisGuideView<AxisGuide>[];
11263
+ prepare(): void;
11264
+ setAll(doc: Document, guides: AxisGuide[], polar: boolean): void;
11265
+ add<T extends RcElement>(child: T): T;
11266
+ }
11267
+ interface IPlottingOwner extends IAnnotationAnchorOwner {
11268
+ showTooltip(series: Series, pv: IPointView, siblings: IPointView[], body: RcElement, p: Point): void;
11269
+ hideTooltip(): void;
11270
+ tooltipVisible(): boolean;
11271
+ getSeriesView(series: ISeries): SeriesView<Series>;
11272
+ }
11273
+ declare class BodyView extends ChartElement<Body> implements IAnnotationAnchorOwner {
11274
+ static readonly BODY_CLASS = "rct-body";
11275
+ private _owner;
11276
+ private _polar;
11277
+ private _hitTester;
11278
+ private _background;
11279
+ private _image;
11280
+ private _emptyView;
11281
+ _gridRowContainer: AxisGridRowContainer;
11282
+ private _gridContainer;
11283
+ private _gridViews;
11284
+ private _baseContainer;
11285
+ private _baseViews;
11286
+ private _breakViews;
11287
+ private _seriesContainer;
11288
+ private _labelContainer;
11289
+ _seriesViews: SeriesView<Series>[];
11290
+ private _seriesMap;
11291
+ private _series;
11292
+ private _annotationContainer;
11293
+ private _frontAnnotationContainer;
11294
+ _annotationViews: AnnotationView<Annotation>[];
11295
+ private _annotationMap;
11296
+ private _annotations;
11297
+ private _gaugeViews;
11298
+ private _gaugeMap;
11299
+ private _gauges;
11300
+ _guideContainer: AxisGuideContainer;
11301
+ _frontGuideContainer: AxisGuideContainer;
11302
+ _guideClip: ClipRectElement;
11303
+ _axisBreakContainer: LayerElement;
11304
+ private _zoomButton;
11305
+ private _feedbackContainer;
11306
+ private _crosshairViews;
11307
+ private _focusedSeries;
11308
+ private _focused;
11309
+ private _siblingSeries;
11310
+ private _siblings;
11311
+ private _hoverPointSeries;
11312
+ private _inverted;
11313
+ private _zoomRequested;
11314
+ protected _animatable: boolean;
11315
+ private _seriesClip;
11316
+ private _seriesClip2;
11317
+ private _bodyClip;
11318
+ constructor(doc: Document, owner: IPlottingOwner);
11319
+ getAnnotationAnchor(model: any): RcElement;
11320
+ prepareRender(doc: Document, chart: IChart): void;
11321
+ prepareGuideContainers(): void;
11322
+ pointerMoved(p: Point, target: EventTarget): boolean;
11323
+ hoverSeries(series: Series): void;
11324
+ private $_setFocused;
11325
+ private $_focusSeries;
11326
+ private $_hoverSeries;
11327
+ hoverPoint(pt: DataPoint): void;
11328
+ seriesByDom(elt: Element): SeriesView;
11329
+ findSeries(ser: Series): SeriesView;
11330
+ isConnected(axis: Axis): boolean;
11331
+ getButton(dom: Element): ButtonElement;
11332
+ buttonClicked(button: ButtonElement): void;
11333
+ addFeedback(view: RcElement): void;
11334
+ setZoom(x1: number, y1: number, x2: number, y2: number): void;
11335
+ animating(): boolean;
11336
+ getTooltipPos(): Point;
11337
+ getFocusPointView(): IPointView;
11338
+ getSeries(series: ISeries): SeriesView;
11339
+ removeFocus(): void;
11340
+ getBounds(): DOMRect;
11341
+ protected _doMeasure(doc: Document, model: Body, hintWidth: number, hintHeight: number, phase: number): Size;
11342
+ protected _clipSeries(view: RcElement, view2: RcElement, invertable: boolean): void;
11343
+ protected _setImage(w: number, h: number): void;
11344
+ protected _doLayout(): void;
11345
+ private $_createGaugeView;
11346
+ private $_prepareGrids;
11347
+ protected _prepareSeries(doc: Document, chart: IChart, series: Series[]): void;
11348
+ protected _prepareGauges(doc: Document, chart: IChart, gauges: GaugeBase[]): void;
11349
+ protected _prepareAnnotations(doc: Document, annotations: Annotation[]): void;
11350
+ private $_prepareAxisBreaks;
11351
+ private $_prepareCrosshairs;
11352
+ protected _layoutAnnotations(inverted: boolean, owner: IAnnotationAnchorOwner, w: number, h: number): void;
11353
+ }
11354
+
11355
+ declare class CrosshairFlagView extends RcElement {
11356
+ private _back;
11357
+ private _text;
11358
+ constructor(doc: Document);
11359
+ setText(model: Crosshair, text: string): void;
11360
+ }
11361
+ declare class AxisScrollView extends ChartElement<AxisScrollBar> {
11362
+ static readonly CLASS_NAME = "rct-axis-scrollbar";
11363
+ static readonly TRACK_CLASS = "rct-axis-scrollbar-track";
11364
+ static readonly THUMB_CLASS = "rct-axis-scrollbar-thumb";
11365
+ static isThumb(dom: Element): boolean;
11366
+ private _trackView;
11367
+ _thumbView: RectElement;
11368
+ _vertical: boolean;
11369
+ _reversed: boolean;
11370
+ _szThumb: number;
11371
+ private _len;
11372
+ private _page;
11373
+ private _pos;
11374
+ constructor(doc: Document);
11375
+ setScroll(zoom: AxisZoom, reversed: boolean): void;
11376
+ getZoomPos(pt: number): number;
11377
+ protected _doMeasure(doc: Document, model: AxisScrollBar, hintWidth: number, hintHeight: number, phase: number): Size;
11378
+ protected _doLayout(param: any): void;
10959
11379
  }
10960
11380
  /**
10961
- * 라인 시리즈 계열의 기반(base) 클래스.<br/>
10962
- * {@page options 옵션} 모델은 {@page op.LineSeriesBaseOptions}이다.<br/>
10963
- * //포인트 label들은 'head', 'foot', 'inside'에 위치할 수 있다.<br/>
10964
- * //기본값은 'auto'('head'')이다.
10965
- * //pointLabel.align으로 수평 정렬을 설정할 수있다.
11381
+ * @internal
10966
11382
  */
10967
- declare abstract class LineSeriesBase<OP extends LineSeriesBaseOptions = LineSeriesBaseOptions> extends ConnectableSeries<OP> {
10968
- static defaults: LineSeriesBaseOptions;
10969
- private _marker;
11383
+ declare class AxisView extends ChartElement<Axis> {
11384
+ static readonly AXIS_CLASS = "rct-axis";
11385
+ static readonly LINE_CLASS = "rct-axis-line";
11386
+ static readonly TICK_CLASS = "rct-axis-tick";
11387
+ _simpleMode: boolean;
11388
+ private _lineView;
11389
+ private _lineView2;
11390
+ private _titleView;
11391
+ private _markContainer;
11392
+ private _markViews;
11393
+ private _labelContainer;
11394
+ private _labelViews;
11395
+ _scrollView: AxisScrollView;
11396
+ private _markLen;
11397
+ private _labelSize;
11398
+ private _labelRowPts;
11399
+ _guideViews: AxisGuideView[];
11400
+ _frontGuideViews: AxisGuideView[];
11401
+ _crosshairView: CrosshairFlagView;
11402
+ _prevModel: Axis;
11403
+ _prevMin: number;
11404
+ _prevMax: number;
11405
+ private _chartEmpty;
11406
+ private _empty;
11407
+ private _edgeStart;
11408
+ private _marginStart;
11409
+ private _marginEnd;
11410
+ private _edgeEnd;
11411
+ constructor(doc: Document);
11412
+ private $_checkScrollView;
11413
+ checkHeight(doc: Document, width: number, height: number): number;
11414
+ checkWidth(doc: Document, width: number, height: number): number;
11415
+ prepareGuides(doc: Document, row: number, col: number, container: AxisGuideContainer, frontContainer: AxisGuideContainer): void;
11416
+ showCrosshair(pos: number, text: string): void;
11417
+ setMargins(edgeStart: number, start: number, end: number, edgeEnd: number): void;
11418
+ hideCrosshiar(): void;
11419
+ scroll(pos: number): void;
11420
+ prepare(m: Axis): void;
11421
+ checkExtents(loaded: boolean): void;
11422
+ clean(): void;
11423
+ protected _doMeasure(doc: Document, model: Axis, hintWidth: number, hintHeight: number, phase: number): Size;
11424
+ protected _doLayout(): void;
11425
+ private $_prepareTickMarks;
11426
+ private _prepareLabel;
11427
+ private $_prepareLabels;
11428
+ private $_getRows;
11429
+ private $_getStep;
11430
+ private $_checkOverlappedHorz2;
11431
+ private $_applyStep;
11432
+ private $_measureLabelsHorz;
11433
+ private $_checkOverlappedVert;
11434
+ private $_checkOverlappedVert2;
11435
+ private $_measureLabelsVert;
11436
+ private $_layoutLabelsHorz;
11437
+ private $_layoutLabelsVert;
11438
+ }
11439
+
11440
+ declare class NavigatorHandleView extends RcElement {
11441
+ private _back;
10970
11442
  private _shape;
10971
- _lines: PointLine[];
10972
- protected _doInitChildren(op: {
10973
- [child: string]: ChartItemOptions;
10974
- }): void;
10975
- /**
10976
- */
10977
- get marker(): LineSeriesMarker;
10978
- getShape(p: LineSeriesPoint): Shape;
10979
- getRadius(p: LineSeriesPoint): number;
10980
- /**
10981
- * null, ranges를 모두 고려해야 한다.
10982
- */
10983
- prepareLines(pts: LineSeriesPoint[]): void;
10984
- get pointLabel(): LinePointLabel;
10985
- protected _createLabel(chart: IChart): LinePointLabel;
10986
- protected _createPoint(source: any): LineSeriesPoint;
10987
- hasShape(): boolean;
10988
- /**
10989
- * rendering 시점에 chart가 series별로 기본 shape를 지정한다.
10990
- */
10991
- setShape(shape: Shape): void;
10992
- _defViewRangeValue(): "x" | "y" | "z";
10993
- protected _createLegendMarker(doc: Document, size: number): RcElement;
10994
- legendMarker(doc: Document, size: number): RcElement;
10995
- abstract getLineType(): LineType;
10996
- protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
11443
+ _vertical: boolean;
11444
+ private _w;
11445
+ private _h;
11446
+ constructor(doc: Document);
11447
+ layout(width: number, height: number, vertical: boolean): void;
10997
11448
  }
10998
11449
  /**
10999
- * Line 시리즈의 마지막 데이터포인트 옆에 표시되는 아이콘과 텍스트 설정 모델.<br/>
11000
- * 마지막 포인트와의 간격은 {@page offset} 속성으로 지정한다.
11450
+ * @internal
11001
11451
  */
11002
- declare class LineSeriesFlag extends IconedText<LineSeriesFlagOptions> {
11003
- series: LineSeries;
11004
- static defaults: LineSeriesFlagOptions;
11005
- constructor(series: LineSeries);
11006
- label(): string;
11007
- getDefaultIconPos(): IconPosition;
11452
+ declare class NavigatorView extends ChartElement<SeriesNavigator> {
11453
+ static readonly CLASS_NAME = "rct-navigator";
11454
+ static readonly BACK_STYLE = "rct-navigator-back";
11455
+ static readonly MASK_STYLE = "rct-navigator-mask";
11456
+ static readonly HANDLE_STYLE = "rct-navigator-handle";
11457
+ static readonly HANDLE_BACK_STYLE = "rct-navigator-handle-back";
11458
+ static readonly TRACK_CLASS = "rct-navigator-track";
11459
+ static readonly THUMB_CLASS = "rct-navigator-thumb";
11460
+ static isHandle(dom: Element): boolean;
11461
+ static isMask(dom: Element): boolean;
11462
+ private _back;
11463
+ private _container;
11464
+ private _seriesView;
11465
+ private _xAxisView;
11466
+ private _yAxisView;
11467
+ _mask: RectElement;
11468
+ _trackView: RectElement;
11469
+ _thumbView: RectElement;
11470
+ _startHandle: NavigatorHandleView;
11471
+ _endHandle: NavigatorHandleView;
11472
+ constructor(doc: Document);
11473
+ dblClick(elt: Element): boolean;
11474
+ svgToElement(x: number, y: number): Point;
11475
+ protected _doMeasure(doc: Document, model: SeriesNavigator, hintWidth: number, hintHeight: number, phase: number): Size;
11476
+ protected _doLayout(param: any): void;
11477
+ private $_prepareSeriesView;
11478
+ private $_prepareXAxisView;
11479
+ private $_prepareYAxisView;
11008
11480
  }
11009
- /**
11010
- * Line 시리즈.<br/>
11011
- * {@page op.SeriesOptions#type}은 {@page config.series.line 'line'}이고,
11012
- * {@page options 옵션} 모델은 {@page op.LineSeriesOptions}이다.
11013
- */
11014
- declare class LineSeries<OP extends LineSeriesOptions = LineSeriesOptions> extends LineSeriesBase<OP> {
11015
- static readonly type: string;
11016
- static defaults: LineSeriesOptions;
11017
- private _flag;
11018
- private _base;
11019
- protected _doInitChildren(op: {
11020
- [child: string]: ChartItemOptions;
11021
- }): void;
11022
- get flag(): LineSeriesFlag;
11023
- backDir(): LineStepDirection;
11024
- isMarker(): boolean;
11025
- get canPolar(): boolean;
11026
- getLineType(): LineType;
11027
- getBaseValue(axis: IAxis): number;
11028
- protected _doPrepareRender(): void;
11481
+
11482
+ declare class TitleView extends BoundableElement<Title<TitleOptions>> {
11483
+ isSub: boolean;
11484
+ static readonly TITLE_CLASS = "rct-title";
11485
+ static readonly SUBTITLE_CLASS = "rct-subtitle";
11486
+ private _textView;
11487
+ private _richText;
11488
+ constructor(doc: Document, isSub: boolean);
11489
+ protected _marginable(): boolean;
11490
+ protected _setBackgroundStyle(back: RectElement): void;
11491
+ protected _doMeasure(doc: Document, model: Title<TitleOptions>, hintWidth: number, hintHeight: number, phase: number): Size;
11492
+ protected _doLayout(): void;
11029
11493
  }
11494
+
11030
11495
  /**
11031
- * Spline 시리즈 모델.<br/>
11032
- * {@page lineType} 설정을 무시하고 항상 'spline'으로 표시되는 것 외에는
11033
- * {@page LineSeries} 시리즈와 동일하다.<br/>
11034
- * {@page op.SeriesOptions#type}은 {@page config.series.spline 'spline'}이고,
11035
- * {@page options 설정} 모델은 {@page op.SplineSeriesOptions}이다.
11496
+ * @internal
11036
11497
  */
11037
- declare class SplineSeries extends LineSeries<SplineSeriesOptions> {
11038
- static readonly type = "spline";
11039
- get canPolar(): boolean;
11040
- _viewType(): string;
11041
- getLineType(): LineType;
11498
+ declare class CreditView extends ChartElement<Credits> {
11499
+ private _textView;
11500
+ constructor(doc: Document);
11501
+ clicked(dom: Element): void;
11502
+ protected _doMeasure(doc: Document, model: Credits, intWidth: number, hintHeight: number, phase: number): Size;
11042
11503
  }
11043
- declare class AreaSeriesPoint extends LineSeriesPoint {
11044
- yLow: number;
11504
+ declare abstract class PaneContainer extends LayerElement {
11505
+ abstract get bodies(): BodyView[];
11506
+ abstract bodyViewOf(dom: Element): BodyView;
11507
+ abstract prepare(doc: Document, model: ISplit): void;
11508
+ abstract measure(doc: Document, model: ISplit, width: number, height: number, phase: number): any;
11509
+ abstract layout(): void;
11510
+ abstract getSeries(series: ISeries): SeriesView;
11511
+ abstract seriesByDom(dom: Element): SeriesView;
11045
11512
  }
11046
11513
  /**
11047
- * Area 시리즈 모델.<br/>
11048
- * 대부분 {@page config.series.line 'line'} 시리즈와 동일하고 라인 아래 부분을 별도의 색상으로 채운다.<br/>
11049
- * {@page op.SeriesOptions#type}은 {@page config.series.area 'area'}이고,
11050
- * {@page options 옵션} 모델은 {@page opt.AreaSeriesOptions}이다.
11514
+ * @internal
11051
11515
  */
11052
- declare class AreaSeries<OP extends AreaSeriesOptions = AreaSeriesOptions> extends LineSeries<OP> {
11053
- static readonly type: string;
11054
- _areas: PointLine[];
11055
- protected _doInitChildren(op: {
11056
- [child: string]: ChartItemOptions;
11057
- }): void;
11516
+ declare class ChartView extends LayerElement implements IAnnotationAnchorOwner {
11517
+ private static pane_class;
11518
+ static registerPaneClass(clazz: any): void;
11519
+ private _model;
11520
+ _inverted: boolean;
11521
+ private _titleSectionView;
11522
+ private _legendSectionView;
11523
+ private _plotContainer;
11524
+ private _bodyView;
11525
+ private _polarView;
11526
+ private _currBody;
11527
+ private _axisSectionMap;
11528
+ private _paneContainer;
11529
+ private _annotationContainer;
11530
+ private _frontAnnotationContainer;
11531
+ private _annotationViews;
11532
+ private _annotationMap;
11533
+ private _annotations;
11534
+ _navigatorView: NavigatorView;
11535
+ private _creditView;
11536
+ private _historyView;
11537
+ private _tooltipView;
11538
+ _org: Point;
11539
+ private _plotWidth;
11540
+ private _plotHeight;
11541
+ private _hoverItem;
11542
+ constructor(doc: Document);
11543
+ getAnnotationAnchor(model: any): RcElement;
11544
+ titleView(): TitleView;
11545
+ subtitleView(): TitleView;
11546
+ bodyView(): BodyView;
11547
+ clean(): void;
11548
+ measure(doc: Document, model: ChartObject, hintWidth: number, hintHeight: number, phase: number): void;
11549
+ layout(): void;
11550
+ showTooltip(series: Series, pv: IPointView, siblings: IPointView[], body: BodyView, p: Point): void;
11551
+ tooltipVisible(): boolean;
11552
+ hideTooltip(): void;
11553
+ getSeriesView(series: ISeries): SeriesView;
11554
+ legendByDom(dom: Element): LegendItem;
11555
+ seriesByDom(dom: Element): SeriesView;
11556
+ findSeriesView(series: Series): SeriesView;
11557
+ creditByDom(dom: Element): CreditView;
11558
+ bodyOf(elt: Element): BodyView;
11559
+ pointerMoved(x: number, y: number, target: EventTarget): void;
11560
+ getAxis(axis: Axis): AxisView;
11561
+ getButton(dom: Element): ButtonElement;
11562
+ buttonClicked(button: ButtonElement): void;
11563
+ getScrollView(dom: Element): AxisScrollView;
11564
+ updateAnnotation(anno: Annotation): void;
11565
+ isAnimating(): boolean;
11566
+ protected _doAttached(parent: RcElement): void;
11567
+ private $_preparePanes;
11568
+ private $_prepareBody;
11569
+ private $_prepareAxes;
11570
+ private $_prepareAxisGuides;
11571
+ private $_measurePlot;
11572
+ private $_measurePolar;
11573
+ private $_prepareAnnotations;
11574
+ private $_layoutAnnotations;
11575
+ }
11576
+
11577
+ declare class ChartControl extends RcControl implements IChartEventListener {
11578
+ private _chart;
11579
+ private _chartView;
11580
+ constructor(doc: Document, container: string | HTMLDivElement);
11581
+ protected _initControl(document: Document, container: string | HTMLDivElement, className: string): void;
11582
+ protected _doDestroy(): void;
11583
+ onModelChanged(chart: ChartObject, item: ChartItem, tag: any): void;
11584
+ onVisibleChanged(chart: ChartObject, item: ChartItem): void;
11585
+ onPointVisibleChanged(chart: ChartObject, series: Series, point: DataPoint): void;
11586
+ onExportRequest(chart: ChartObject, options: ExportOptions): void;
11587
+ onRefreshRequest(chart: ChartObject): void;
11058
11588
  /**
11059
- * 미리 생성된 line들을 기준으로 area들을 생성한다.
11589
+ * chart model.
11060
11590
  */
11061
- prepareAreas(): void;
11062
- isBased(axis: IAxis): boolean;
11063
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11064
- protected _createPoint(source: any): AreaSeriesPoint;
11065
- protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
11066
- }
11067
- /**
11068
- * [low, high|y]
11069
- * [x, low, high|y]
11070
- */
11071
- declare class AreaRangeSeriesPoint extends AreaSeriesPoint {
11072
- low: any;
11073
- lowValue: number;
11074
- get high(): number;
11075
- get highValue(): number;
11076
- px2: number;
11077
- py2: number;
11078
- protected _assignTo(proxy: any): any;
11079
- protected _valuesChangd(prev: any): boolean;
11080
- protected _readArray(series: AreaRangeSeries, v: any[]): void;
11081
- protected _readObject(series: AreaRangeSeries, v: any): void;
11082
- protected _readSingle(v: any): void;
11083
- parse(series: AreaRangeSeries): void;
11084
- initValues(): void;
11085
- initPrev(axis: IAxis, prev: any): void;
11086
- applyValueRate(prev: any, vr: number): void;
11591
+ get chart(): Chart;
11592
+ set chart(value: Chart);
11593
+ get model(): ChartObject;
11594
+ changeModel(model: ChartObject, oldModel: ChartObject): void;
11595
+ chartView(): ChartView;
11596
+ refresh(): void;
11597
+ scroll(axis: Axis, pos: number): void;
11598
+ use(_module: any): void;
11599
+ protected _doRender(bounds: IRect): void;
11600
+ protected _doRenderBackground(elt: HTMLDivElement, root: RcElement, width: number, height: number): void;
11601
+ private _loadModules;
11602
+ private _export;
11087
11603
  }
11604
+
11088
11605
  /**
11089
- * AreaRange 시리즈 모델.<br/>
11090
- * {@page op.SeriesOptions#type} {@page config.series.arearange 'arearange'}이고,
11091
- * {@page options 옵션} 모델은 {@page op.AreaRangeSeriesOptions}이다.
11606
+ * 카테고리축의 tick 모델.<br/>
11607
+ * {@page options} 모델은 {@page op.CategoryAxisTickOptions}이다.
11092
11608
  */
11093
- declare class AreaRangeSeries extends LineSeriesBase<AreaRangeSeriesOptions> {
11094
- static readonly type = "arearange";
11095
- static defaults: AreaRangeSeriesOptions;
11096
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11097
- protected _createPoint(source: any): AreaRangeSeriesPoint;
11098
- getLineType(): LineType;
11099
- collectValues(axis: IAxis, vals: number[]): void;
11100
- protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
11609
+ declare class CategoryAxisTick extends AxisTick<CategoryAxisTickOptions> {
11610
+ static defaults: CategoryAxisTickOptions;
11611
+ getPosition(): CategoryTickPosition;
11101
11612
  }
11102
11613
  /**
11103
- * Line 시리즈그룹 모델.<br/>
11104
- * {@page op.SeriesOptions#type}은 {@page config.series.linegroup 'linegroup'}이고,
11105
- * {@page options 옵션} 모델은 {@page op.LineSeriesGroupOptions}이다.
11614
+ * @internal
11615
+ *
11616
+ * 카테고리축의 라벨 모델.<br/>
11617
+ * {@page options} 모델은 {@page op.AxisLabelOptions}이다.
11106
11618
  */
11107
- declare class LineSeriesGroup extends SeriesGroup<LineSeries, LineSeriesGroupOptions> {
11108
- static readonly type = "linegroup";
11109
- static readonly seriesType = "line";
11110
- static defaults: LineSeriesGroupOptions;
11111
- protected _canContain(ser: Series): boolean;
11112
- getBaseValue(axis: IAxis): number;
11619
+ declare class CategoryAxisLabel extends AxisLabel<AxisLabelOptions> {
11620
+ getTick(index: number, v: any): string;
11621
+ getIcon(tick: IAxisTick): string;
11113
11622
  }
11114
11623
  /**
11115
- * Area 시리즈 그룹.<br/>
11116
- * {@page op.SeriesOptions#type}은 **'areagroup'** 이고,
11117
- * {@page options 옵션} 모델은 {@page op.BarSeriesGroupOptions}이다.
11624
+ * @internal
11625
+ *
11626
+ * 카테고리축의 grid 모델.<br/>
11627
+ * {@page options} 모델은 {@page op.AxisGridOptions}이다.
11118
11628
  */
11119
- declare class AreaSeriesGroup extends SeriesGroup<AreaSeries, AreaSeriesGroupOptions> {
11120
- static readonly type = "areagroup";
11121
- static readonly seriesType = "area";
11122
- static defaults: AreaSeriesGroupOptions;
11123
- prepareLines(series: AreaSeries): void;
11124
- protected _canContain(ser: Series): boolean;
11125
- getBaseValue(axis: IAxis): number;
11629
+ declare class CategoryAxisGrid extends AxisGrid<AxisGridOptions> {
11630
+ getPoints(axis: CategoryAxis): number[];
11126
11631
  }
11127
-
11128
11632
  /**
11129
- * Bar 시리즈 계열의 기반(base) 모델.<br/>
11130
- * {@page options 설정} 모델은 {@page op.BarSeriesBaseOptions}이다.
11633
+ * 카테고리 모델.<br/>
11634
+ * {@page op.AxisOptions#type} {@page config.xAxis.category 'category'}이고,
11635
+ * {@page options 설정} 모델은 {@page op.CategoryAxisOptions}이다.
11131
11636
  */
11132
- declare abstract class BarSeriesBase<OP extends BarSeriesBaseOptions = BarSeriesBaseOptions> extends BasedSeries<OP> {
11133
- static defaults: BarSeriesBaseOptions;
11134
- canCategorized(): boolean;
11135
- _colorByPoint(): boolean;
11136
- protected _createPoint(source: any): DataPoint;
11137
- protected _getGroupBase(): number;
11138
- }
11139
- /**
11140
- * Bar 시리즈 모델.<br/>
11141
- * {@page op.SeriesOptions#type}은 {@page config.series.bar 'bar'}이고,
11142
- * {@page options 설정} 모델은 {@page op.BarSeriesOptions}이다.
11143
- */
11144
- declare class BarSeries extends BarSeriesBase<BarSeriesOptions> {
11145
- static readonly type = "bar";
11146
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11147
- get canPolar(): boolean;
11148
- }
11149
- /**
11150
- * {@page BarSeries}, {@page CircleBarSeires}의 그룹 기반 모델.
11151
- */
11152
- declare abstract class BarSeriesGroupBase<T extends BarSeriesBase, OP extends BarSeriesGroupBaseOptions<BarSeriesBaseOptions>> extends ClusterableSeriesGroup<T, OP> implements IClusterable {
11153
- static defaults: BarSeriesGroupBaseOptions<BarSeriesBaseOptions>;
11154
- canCategorized(): boolean;
11155
- getBaseValue(axis: IAxis): number;
11156
- protected _doPrepareSeries(series: T[]): void;
11157
- }
11158
- /**
11159
- * Bar 시리즈 그룹.<br/>
11160
- * {@page op.SeriesOptions#type}은 {@page config.series.bargroup 'bargroup'}이고,
11161
- * {@page options 옵션} 모델은 {@page op.BarSeriesGroupOptions}이다.
11162
- */
11163
- declare class BarSeriesGroup extends BarSeriesGroupBase<BarSeries, BarSeriesGroupOptions> {
11164
- static readonly type = "bargroup";
11165
- static readonly seriesType = "bar";
11166
- protected _canContain(ser: Series): boolean;
11637
+ declare class CategoryAxis extends Axis<CategoryAxisOptions> {
11638
+ static type: string;
11639
+ static defaults: CategoryAxisOptions;
11640
+ _categories: {
11641
+ c: string;
11642
+ t: string;
11643
+ w: number;
11644
+ i?: string;
11645
+ }[];
11646
+ _cats: string[];
11647
+ _weights: number[];
11648
+ _len: number;
11649
+ private _map;
11650
+ private _catPad;
11651
+ private _catMin;
11652
+ private _catMax;
11653
+ private _catLen;
11654
+ _pts: number[];
11655
+ _tstep: number;
11656
+ get tick(): CategoryAxisTick;
11657
+ getCategories(): string[];
11658
+ xValueAt(pos: number): number;
11659
+ getWdith(length: number, category: number): number;
11660
+ _type(): string;
11661
+ unitPad(): number;
11662
+ continuous(): boolean;
11663
+ protected _createGrid(): CategoryAxisGrid;
11664
+ protected _createTickModel(): CategoryAxisTick;
11665
+ protected _createLabel(): CategoryAxisLabel;
11666
+ collectValues(): void;
11667
+ getStartAngle(): number;
11668
+ protected _doPrepareRender(): void;
11669
+ protected _doBuildTicks(min: number, max: number, length: number): IAxisTick[];
11670
+ _calcPoints(length: number, phase: number): void;
11671
+ getPos(length: number, value: number): number;
11672
+ valueAt(length: number, pos: number): number;
11673
+ getUnitLen(length: number, value: number): number;
11674
+ getLabelLength(length: number, value: number): number;
11675
+ getValue(value: any): number;
11676
+ getXValue(value: number): any;
11677
+ private $_collectCategories;
11167
11678
  }
11168
11679
 
11169
11680
  /**
11170
- * BarRange 시리즈 모델.<br/>
11171
- * {@page op.SeriesOptions#type}은 {@page config.series.barrange 'barrange'}이고,
11172
- * {@page options 옵션} 모델은 {@page op.BarRangeSeriesOptions}이다.
11681
+ * @internal
11682
+ * 시간축의 tick 모델.<br/>
11683
+ * {@page options} 모델은 {@page op.LinearGaugeLabelOptions}이다.
11684
+ *
11685
+ * [주의] javascript에서 숫자값을 Date로 변환하거나, Date를 숫자로 변환할 때는 모두 new Date가 기준이 된다.
11173
11686
  */
11174
- declare class BarRangeSeries extends LowRangedSeries<BarRangeSeriesOptions> {
11175
- static readonly type: string;
11176
- static defaults: BarRangeSeriesOptions;
11177
- _lowFielder: (src: any) => any;
11178
- pointLabelCount(): number;
11179
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11180
- protected _getFielderProps(): string[];
11181
- protected _createPoint(source: any): DataPoint;
11182
- protected _getBottomValue(p: RangedPoint): number;
11183
- }
11184
-
11185
- declare class BellCurveSeriesPoint extends AreaSeriesPoint {
11687
+ declare class TimeAxisTick extends ContinuousAxisTick<TimeAxisTickOptions> {
11688
+ _scale: number;
11689
+ getNextStep(curr: number, delta: number): number;
11690
+ protected _isValidInterval(v: any): boolean;
11691
+ protected _getStepMultiples(step: number): number[];
11692
+ protected _getStepsByPixels(length: number, pixels: number, base: number, min: number, max: number): number[];
11693
+ protected _getStepsByInterval(interval: any, base: number, min: number, max: number): number[];
11186
11694
  }
11187
11695
  /**
11188
- * BellCurve 시리즈.<br/>
11189
- * {@page op.SeriesOptions#type} {@page config.series.bellcurve 'bellcurve'}이고,
11190
- * {@page options 설정} 모델은 {@page op.BellCurveSeriesOptions}이다.
11696
+ * 시간축 라벨 모델.<br/>
11697
+ * {@page options} 모델은 {@page op.TimeAxisLabelOptions}이다.
11191
11698
  */
11192
- declare class BellCurveSeries extends AreaSeries<BellCurveSeriesOptions> {
11193
- static readonly type = "bellcurve";
11194
- static defaults: BellCurveSeriesOptions;
11195
- getLineType(): LineType;
11196
- protected _createPoint(source: any): BellCurveSeriesPoint;
11197
- protected _doLoadData(src: any): any[];
11198
- _referOtherSeries(series: Series): boolean;
11199
- reference(other: Series, axis: IAxis): void;
11200
- private _loadTable;
11699
+ declare class TimeAxisLabel extends ContinuousAxisLabel<TimeAxisLabelOptions> {
11700
+ static defaults: TimeAxisLabelOptions;
11701
+ private _formats;
11702
+ private _formatter;
11703
+ protected _doApply(options: TimeAxisLabelOptions): void;
11704
+ getTick(index: number, v: any): string;
11201
11705
  }
11202
-
11203
11706
  /**
11204
- * [min, low, mid, high, max|y]
11205
- * [x, min, low, mid, high, max|y]
11707
+ * 날짜/시간 모델.<br/>
11708
+ * {@page op.AxisOptions#type}은 {@page config.xAxis.time 'time'}이고,
11709
+ * {@page options 설정} 모델은 {@page op.TimeAxisOptions}이다.
11206
11710
  */
11207
- declare class BoxPlotSeriesPoint extends DataPoint {
11208
- min: any;
11209
- low: any;
11210
- mid: any;
11211
- high: any;
11212
- minValue: number;
11213
- lowValue: number;
11214
- midValue: number;
11215
- highValue: number;
11216
- minLabel: any;
11217
- get max(): number;
11218
- get maxValue(): number;
11219
- lowPos: number;
11220
- midPos: number;
11221
- highPos: number;
11222
- labelCount(): number;
11223
- getPointLabel(index: number): any;
11224
- getPointText(index: number): any;
11225
- protected _assignTo(proxy: any): any;
11226
- protected _valuesChangd(prev: any): boolean;
11227
- protected _readArray(series: BoxPlotSeries, v: any[]): void;
11228
- protected _readObject(series: BoxPlotSeries, v: any): void;
11229
- protected _readSingle(v: any): void;
11230
- parse(series: BoxPlotSeries): void;
11231
- initValues(): void;
11232
- initPrev(axis: IAxis, prev: any): void;
11233
- applyValueRate(prev: any, vr: number): void;
11711
+ declare class TimeAxis extends ContinuousAxis<TimeAxisOptions> {
11712
+ static type: string;
11713
+ static subtype: string;
11714
+ static defaults: TimeAxisOptions;
11715
+ _offset: number;
11716
+ /**
11717
+ * @override
11718
+ */
11719
+ get label(): TimeAxisLabel;
11720
+ protected _createTickModel(): TimeAxisTick;
11721
+ protected _createLabel(): TimeAxisLabel;
11722
+ collectValues(): void;
11723
+ getValue(value: any): number;
11724
+ incStep(value: number, step: any): number;
11725
+ date(value: number): Date;
11726
+ axisValueAt(length: number, pos: number): any;
11727
+ value2Tooltip(value: number): any;
11728
+ getXValue(value: number): number | Date;
11234
11729
  }
11730
+
11235
11731
  /**
11236
- * {@page https://en.wikipedia.org/wiki/Box_plot BoxPlot} 시리즈.<br/>
11237
- * {@page op.SeriesOptions#type} {@page config.series.boxplot 'boxplot'}이고,
11238
- * {@page options 설정} 모델은 {@page op.BoxPlotSeriesOptions}이다.
11732
+ * 로그축의 tick 모델.<br/>
11733
+ * {@page options} 모델은 {@page op.LogAxisTickOptions}이다.
11239
11734
  */
11240
- declare class BoxPlotSeries extends LowRangedSeries<BoxPlotSeriesOptions> {
11241
- static readonly type = "boxplot";
11242
- static defaults: BoxPlotSeriesOptions;
11243
- _minFielder: (src: any) => any;
11244
- _lowFielder: (src: any) => any;
11245
- _midFielder: (src: any) => any;
11246
- _highFielder: (src: any) => any;
11247
- pointLabelCount(): number;
11248
- canCategorized(): boolean;
11249
- protected _getFielderProps(): string[];
11250
- protected _createPoint(source: any): DataPoint;
11251
- protected _getBottomValue(p: BoxPlotSeriesPoint): number;
11252
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11735
+ declare class LogAxisTick extends ContinuousAxisTick<LogAxisTickOptions> {
11736
+ static defaults: LogAxisTickOptions;
11737
+ canUseNumSymbols(): boolean;
11738
+ protected _getStepMultiples(scale: number): number[];
11739
+ /**
11740
+ * 소수점을 갖는 step들을 역로그된 값이 최대한 정수가 되게 조정한다.
11741
+ */
11742
+ _normalizeSteps(steps: number[], min: number, max: number): number[];
11253
11743
  }
11254
-
11255
11744
  /**
11256
- * 버블 시리즈 모델.<br/>
11257
- * {@page op.SeriesOptions#type}은 {@page config.series.bubble 'bubble'}이고,
11258
- * {@page options 설정} 모델은 {@page op.BubbleSeriesOptions}이다.
11745
+ * 로그축 모델.<br/>
11746
+ * {@page op.AxisOptions#type}은 {@page config.xAxis.log 'log'}이고,
11747
+ * {@page options 설정} 모델은 {@page op.LogAxisOptions}이다.
11259
11748
  */
11260
- declare class BubbleSeries extends MarkerSeries<BubbleSeriesOptions> {
11261
- static readonly type: string;
11262
- static defaults: BubbleSeriesOptions;
11263
- private _minSizeDim;
11264
- private _maxSizeDim;
11265
- _zMin: number;
11266
- _zMax: number;
11267
- _noSize: boolean;
11268
- getShape(): Shape;
11269
- getPixelMinMax(len: number): {
11749
+ declare class LogAxis extends ContinuousAxis<LogAxisOptions> {
11750
+ static type: string;
11751
+ protected _createLabel(): ContinuousAxisLabel;
11752
+ protected _createTickModel(): LogAxisTick;
11753
+ collectValues(): void;
11754
+ /**
11755
+ * 내부에서는 log 값들을 사용하고...
11756
+ */
11757
+ getPos(length: number, value: number): number;
11758
+ protected _doCalculateRange(values: number[]): {
11270
11759
  min: number;
11271
11760
  max: number;
11272
11761
  };
11273
- getRadius(value: number, pxMin: number, pxMax: number): number;
11274
- protected _doApply(options: BubbleSeriesOptions): void;
11275
- protected _createPoint(source: any): DataPoint;
11276
- protected _getNoClip(polar: boolean): boolean;
11277
- get canPolar(): boolean;
11278
- hasZ(): boolean;
11279
- _colorByPoint(): boolean;
11280
- protected _doPrepareRender(): void;
11281
- protected _getRangeMinMax(axis: "x" | "y" | "z"): {
11762
+ /**
11763
+ * 화면 표시는 역log 값들을 사용한다.
11764
+ */
11765
+ protected _createTick(length: number, index: number, step: number): IAxisTick;
11766
+ protected _calcUnitLen(vals: number[], length: number, axisMin: number, axisMax: number): {
11767
+ len: number;
11282
11768
  min: number;
11283
- max: number;
11284
11769
  };
11285
11770
  }
11286
11771
 
11287
- /**
11288
- * Bump 시리즈.<br/>
11289
- * {@page op.SeriesOptions#type}은 {@page config.series.bump 'bump'}이고,
11290
- * {@page options 설정} 모델은 {@page op.BumpSeriesGroupOptions}이다.
11291
- */
11292
- declare class BumpSeriesGroup extends ConstraintSeriesGroup<LineSeries, BumpSeriesGroupOptions> {
11293
- static readonly type = "bump";
11294
- static readonly seriesType = "line";
11295
- protected _canContain(ser: Series): boolean;
11296
- protected _doConstraintYValues(series: Series[]): number[];
11297
- }
11298
-
11299
- /**
11300
- * [low, open, close, high|y]
11301
- * [x, low, open, close, high|y]
11302
- */
11303
- declare class CandlestickSeriesPoint extends DataPoint {
11304
- low: any;
11305
- close: any;
11306
- open: any;
11307
- lowValue: number;
11308
- closeValue: number;
11309
- openValue: number;
11310
- get high(): number;
11311
- get highValue(): number;
11312
- protected _assignTo(proxy: any): any;
11313
- protected _valuesChangd(prev: any): boolean;
11314
- protected _readArray(series: CandlestickSeries, v: any[]): void;
11315
- protected _readObject(series: CandlestickSeries, v: any): void;
11316
- protected _readSingle(v: any): void;
11317
- parse(series: CandlestickSeries): void;
11318
- initValues(): void;
11319
- initPrev(axis: IAxis, prev: any): void;
11320
- applyValueRate(prev: any, vr: number): void;
11321
- }
11322
- /**
11323
- * Candlestick 시리즈.<br/>
11324
- * {@page op.SeriesOptions#type}은 {@page config.series.candlestick 'candlestick'}이고,
11325
- * {@page options 설정} 모델은 {@page op.CandlestickSeriesOptions}이다.
11326
- */
11327
- declare class CandlestickSeries<OP extends CandlestickSeriesOptions = CandlestickSeriesOptions> extends LowRangedSeries<OP> {
11328
- static readonly type: string;
11329
- static defaults: CandlestickSeriesOptions;
11330
- canCategorized(): boolean;
11331
- protected _createPoint(source: any): DataPoint;
11332
- protected _getBottomValue(p: CandlestickSeriesPoint): number;
11333
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11334
- }
11335
-
11336
- declare class CircelBarPointLabel extends DataPointLabel<DataPointLabelOptions> {
11337
- static defaults: CircleBarPointLabelOptions;
11338
- }
11339
- /**
11340
- * CirleBar 시리즈.<br/>
11341
- * {@page op.SeriesOptions#type}은 {@page config.series.circlebar 'circlebar'}이고,
11342
- * {@page options 설정} 모델은 {@page op.CircleBarSeriesOptions}이다.
11343
- */
11344
- declare class CircleBarSeries extends BarSeriesBase<CircleBarSeriesOptions> {
11345
- static readonly type = "circlebar";
11346
- get pointLabel(): CircelBarPointLabel;
11347
- protected _createLabel(chart: IChart): CircelBarPointLabel;
11348
- }
11349
- /**
11350
- * CircleBar 시리즈 그룹.<br/>
11351
- * {@page op.SeriesOptions#type}은 {@page config.series.circlebargroup 'circlebargroup'}이고,
11352
- * {@page options 설정} 모델은 {@page op.CircleBarSeriesGroupOptions}이다.
11353
- */
11354
- declare class CircleBarSeriesGroup extends BarSeriesGroupBase<CircleBarSeries, CircleBarSeriesGroupOptions> implements IClusterable {
11355
- static readonly type = "circlebargroup";
11356
- static readonly seriesType = "circlebar";
11357
- protected _canContain(ser: Series): boolean;
11772
+ interface IPointPos {
11773
+ px: number;
11774
+ py: number;
11775
+ isNull?: boolean;
11776
+ range?: ValueRange;
11358
11777
  }
11359
-
11360
- /**
11361
- * [low, y]
11362
- * [x, low, y]
11363
- */
11364
- declare class DumbbellSeriesPoint extends RangedPoint {
11365
- hPoint: number;
11778
+ type PointLine = IPointPos[];
11779
+ declare class LineSeriesPoint extends DataPoint {
11366
11780
  radius: number;
11367
11781
  shape: Shape;
11368
- lowRadius: number;
11369
- lowShape: Shape;
11370
- }
11371
- declare class DumbbellSeriesMarker extends SeriesMarker<DumbbellSeriesMarkerOptions> {
11372
- static defaults: DumbbellSeriesMarkerOptions;
11373
- }
11374
- /**
11375
- * Dumbbell 시리즈.<br/>
11376
- * {@page op.SeriesOptions#type}은 {@page config.series.dumbbell 'dumbbell'}이고,
11377
- * {@page options 설정} 모델은 {@page op.DumbbellSeriesOptions}이다.
11378
- */
11379
- declare class DumbbellSeries extends LowRangedSeries<DumbbellSeriesOptions> {
11380
- static readonly type = "dumbbell";
11381
- private _marker;
11382
- private _lowMarker;
11383
- protected _doInitChildren(op: {
11384
- [child: string]: ChartItemOptions;
11385
- }): void;
11386
- get marker(): DumbbellSeriesMarker;
11387
- get lowMarker(): DumbbellSeriesMarker;
11388
- canCategorized(): boolean;
11389
- protected _getBottomValue(p: DumbbellSeriesPoint): number;
11390
- pointLabelCount(): number;
11391
- getLabelOff(off: number): number;
11392
- protected _createPoint(source: any): DataPoint;
11393
- protected _doPrepareRender(): void;
11394
- }
11395
-
11396
- /**
11397
- * Bar를 여러 개의 segment로 나눠 표시하는 시리즈.<br/>
11398
- * {@page op.SeriesOptions#type}은 {@page config.series.equalizer 'equalizer'}이고,
11399
- * {@page options 설정} 모델은 {@page op.EqualizerSeriesOptions}이다.
11400
- */
11401
- declare class EqualizerSeries extends BasedSeries<EqualizerSeriesOptions> {
11402
- static readonly type = "equalizer";
11403
- static defaults: EqualizerSeriesOptions;
11404
- private _segmentSizeDim;
11405
- getSegmentSize(domain: number): number;
11406
- protected _doApply(options: EqualizerSeriesOptions): void;
11407
- canCategorized(): boolean;
11408
- protected _createPoint(source: any): DataPoint;
11409
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11410
- }
11411
-
11412
- /**
11413
- * ErrorBar 시리즈.<br/>
11414
- * {@page op.SeriesOptions#type}은 {@page config.series.errorbar 'errorbar'}이고,
11415
- * {@page options 설정} 모델은 {@page op.ErrorbarSeriesOptions}이다.
11416
- */
11417
- declare class ErrorBarSeries extends LowRangedSeries<ErrorBarSeriesOptions> {
11418
- static readonly type = "errorbar";
11419
- static defaults: ErrorBarSeriesOptions;
11420
- isClusterable(): boolean;
11421
- pointLabelCount(): number;
11422
- protected _createPoint(source: any): DataPoint;
11423
- getBaseValue(axis: IAxis): number;
11424
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11425
- protected _getBottomValue(p: RangedPoint): number;
11426
- }
11427
-
11428
- declare class FunnelSeriesLabel extends WidgetSeriesLabel<FunnelSeriesLabelOptions> {
11429
- static readonly OUTSIDE_DIST = 25;
11430
- static readonly ENDED_DIST = 10;
11431
- getDistance(): number;
11432
- }
11433
- /**
11434
- * Funnel 시리즈 모델.<br/>
11435
- * {@page op.SeriesOptions#type}은 {@page config.series.funnel 'funnel'}이고,
11436
- * {@page options 설정} 모델은 {@page op.FunnelSeriesOptions}이다.
11437
- */
11438
- declare class FunnelSeries extends WidgetSeries<FunnelSeriesOptions> {
11439
- static readonly type = "funnel";
11440
- static defaults: FunnelSeriesOptions;
11441
- private _width;
11442
- private _height;
11443
- private _neckWidth;
11444
- private _neckHeight;
11445
- private _widthDim;
11446
- private _heightDim;
11447
- private _neckWidthDim;
11448
- private _neckHeightDim;
11449
- getSize(plotWidth: number, plotHeight: number): Size;
11450
- getNeckSize(width: number, height: number): Size;
11451
- get pointLabel(): FunnelSeriesLabel;
11452
- protected _createLabel(chart: IChart): FunnelSeriesLabel;
11453
- protected _createPoint(source: any): DataPoint;
11454
- protected _doApply(options: FunnelSeriesOptions): void;
11455
- }
11456
-
11457
- /**
11458
- * Heatmap 시리즈 모델.<br/>
11459
- * {@page op.SeriesOptions#type}은 {@page config.series.heatmap 'heatmap'}이고,
11460
- * {@page options 설정} 모델은 {@page op.HeatmapSeriesOptions}이다.
11461
- */
11462
- declare class HeatmapSeries extends ConnectableSeries<HeatmapSeriesOptions> {
11463
- static readonly type = "heatmap";
11464
- static defaults: HeatmapSeriesOptions;
11465
- _heatMin: number;
11466
- _heatMax: number;
11467
- getColor(value: number): string;
11468
- canMixWith(other: IPlottingItem): boolean;
11469
- canCategorized(): boolean;
11470
- hasZ(): boolean;
11471
- defYAxisType(): string;
11472
- protected _createPoint(source: any): DataPoint;
11473
- protected _doPrepareRender(): void;
11782
+ px: number;
11783
+ py: number;
11784
+ toPoint(): IPointPos;
11474
11785
  }
11475
-
11476
11786
  /**
11477
- * [Histogram](https://en.wikipedia.org/wiki/Histogram) 시리즈 모델.<br/>
11478
- * {@page op.SeriesOptions#type}은 {@page config.series.histogram 'histogram'}이고,
11479
- * {@page options 설정} 모델은 {@page op.HistogramSeriesOptions}이다.
11787
+ * 데이터 포인트 maker 설정 정보.
11480
11788
  */
11481
- declare class HistogramSeries extends ConnectableSeries<HistogramSeriesOptions> {
11482
- static readonly type = "histogram";
11483
- static defaults: HistogramSeriesOptions;
11484
- _binInterval: number;
11485
- private _base;
11486
- getBinCount(length: number): number;
11487
- protected _createPoint(source: any): DataPoint;
11488
- protected _doLoadPoints(src: any[]): void;
11489
- collectValues(axis: IAxis, vals: number[]): void;
11490
- protected _doPrepareRender(): void;
11491
- getBaseValue(axis: IAxis): number;
11492
- isBased(axis: IAxis): boolean;
11493
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11789
+ declare class LineSeriesMarker extends SeriesMarker<LineSeriesMarkerOptions> {
11790
+ static defaults: LineSeriesMarkerOptions;
11494
11791
  }
11495
-
11496
- declare class LollipopSeriesMarker extends SeriesMarker<LollipopSeriesMarkerOptions> {
11497
- static defaults: LollipopSeriesMarkerOptions;
11792
+ declare class LinePointLabel extends DataPointLabel<LinePointLabelOptions> {
11793
+ static readonly ALIGN_GAP = 4;
11794
+ static defaults: LinePointLabelOptions;
11795
+ getAlignOffset(): number;
11796
+ getPosition(): PointLabelPosition;
11498
11797
  }
11499
11798
  /**
11500
- * Lollipop(막대 사탕) 시리즈 모델.<br/>
11501
- * {@page op.SeriesOptions#type} {@page config.series.lollipop 'lollipop'}이고,
11502
- * {@page options 설정} 모델은 {@page op.LollipopSeriesOptions}이다.
11799
+ * 라인 시리즈 계열의 기반(base) 클래스.<br/>
11800
+ * {@page options 옵션} 모델은 {@page op.LineSeriesBaseOptions}이다.<br/>
11801
+ * //포인트 label들은 'head', 'foot', 'inside'에 위치할 수 있다.<br/>
11802
+ * //기본값은 'auto'('head'')이다.
11803
+ * //pointLabel.align으로 수평 정렬을 설정할 수있다.
11503
11804
  */
11504
- declare class LollipopSeries extends BasedSeries<LollipopSeriesOptions> {
11505
- static readonly type = "lollipop";
11805
+ declare abstract class LineSeriesBase<OP extends LineSeriesBaseOptions = LineSeriesBaseOptions> extends ConnectableSeries<OP> {
11806
+ static defaults: LineSeriesBaseOptions;
11506
11807
  private _marker;
11808
+ private _shape;
11809
+ _lines: PointLine[];
11507
11810
  protected _doInitChildren(op: {
11508
11811
  [child: string]: ChartItemOptions;
11509
11812
  }): void;
11510
- get marker(): LollipopSeriesMarker;
11511
- canCategorized(): boolean;
11512
- getLabelOff(off: number): number;
11513
- protected _createPoint(source: any): DataPoint;
11514
- protected _doPrepareRender(): void;
11813
+ /**
11814
+ */
11815
+ get marker(): LineSeriesMarker;
11816
+ getShape(p: LineSeriesPoint): Shape;
11817
+ getRadius(p: LineSeriesPoint): number;
11818
+ /**
11819
+ * null, ranges를 모두 고려해야 한다.
11820
+ */
11821
+ prepareLines(pts: LineSeriesPoint[]): void;
11822
+ get pointLabel(): LinePointLabel;
11823
+ protected _createLabel(chart: IChart): LinePointLabel;
11824
+ protected _createPoint(source: any): LineSeriesPoint;
11825
+ hasShape(): boolean;
11826
+ /**
11827
+ * rendering 시점에 chart가 series별로 기본 shape를 지정한다.
11828
+ */
11829
+ setShape(shape: Shape): void;
11830
+ _defViewRangeValue(): "x" | "y" | "z";
11831
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
11832
+ legendMarker(doc: Document, size: number): RcElement;
11833
+ abstract getLineType(): LineType;
11834
+ protected _connectNulls(): boolean;
11835
+ protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
11515
11836
  }
11516
-
11517
11837
  /**
11518
- * {@page https://en.wikipedia.org/wiki/Open-high-low-close_chart OHLC} 시리즈 모델.<br/>
11519
- * {@page op.SeriesOptions#type} {@page config.series.ohlc 'ohlc'}이고,
11520
- * {@page options 설정} 모델은 {@page op.OhlcSeriesOptions}이다.
11838
+ * Line 시리즈의 마지막 데이터포인트 옆에 표시되는 아이콘과 텍스트 설정 모델.<br/>
11839
+ * 마지막 포인트와의 간격은 {@page offset} 속성으로 지정한다.
11521
11840
  */
11522
- declare class OhlcSeries extends CandlestickSeries<OhlcSeriesOptions> {
11523
- static readonly type = "ohlc";
11524
- protected _createPoint(source: any): DataPoint;
11525
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11526
- }
11527
-
11528
- declare class ParetoSeriesPoint extends LineSeriesPoint {
11841
+ declare class LineSeriesFlag extends IconedText<LineSeriesFlagOptions> {
11842
+ series: LineSeries;
11843
+ static defaults: LineSeriesFlagOptions;
11844
+ constructor(series: LineSeries);
11845
+ label(): string;
11846
+ getDefaultIconPos(): IconPosition;
11529
11847
  }
11530
11848
  /**
11531
- * Pareto 시리즈<br/>
11532
- * {@page op.SeriesOptions#type}은 {@page config.series.pareto 'pareto'}이고,
11533
- * {@page options 설정} 모델은 {@page op.ParetoSeriesOptions}이다.
11849
+ * Line 시리즈.<br/>
11850
+ * {@page op.SeriesOptions#type}은 {@page config.series.line 'line'}이고,
11851
+ * {@page options 옵션} 모델은 {@page op.LineSeriesOptions}이다.
11534
11852
  */
11535
- declare class ParetoSeries extends LineSeriesBase<ParetoSeriesOptions> {
11536
- static readonly type = "pareto";
11537
- static defaults: ParetoSeriesOptions;
11853
+ declare class LineSeries<OP extends LineSeriesOptions = LineSeriesOptions> extends LineSeriesBase<OP> {
11854
+ static readonly type: string;
11855
+ static defaults: LineSeriesOptions;
11856
+ private _flag;
11857
+ private _base;
11858
+ protected _doInitChildren(op: {
11859
+ [child: string]: ChartItemOptions;
11860
+ }): void;
11861
+ get flag(): LineSeriesFlag;
11862
+ backDir(): LineStepDirection;
11863
+ isMarker(): boolean;
11864
+ get canPolar(): boolean;
11538
11865
  getLineType(): LineType;
11539
- protected _createPoint(source: any): ParetoSeriesPoint;
11540
- _referOtherSeries(series: Series): boolean;
11541
- reference(other: Series, axis: IAxis): void;
11866
+ protected _connectNulls(): boolean;
11867
+ getBaseValue(axis: IAxis): number;
11868
+ protected _doPrepareRender(): void;
11542
11869
  }
11543
-
11544
11870
  /**
11545
- * [y]
11546
- * [x, y]
11871
+ * Spline 시리즈 모델.<br/>
11872
+ * {@page lineType} 설정을 무시하고 항상 'spline'으로 표시되는 것 외에는
11873
+ * {@page LineSeries} 시리즈와 동일하다.<br/>
11874
+ * {@page op.SeriesOptions#type}은 {@page config.series.spline 'spline'}이고,
11875
+ * {@page options 설정} 모델은 {@page op.SplineSeriesOptions}이다.
11547
11876
  */
11548
- declare class PieSeriesPoint extends WidgetSeriesPoint {
11549
- private _thickness;
11550
- private _thickDim;
11551
- sliced: boolean;
11552
- startAngle: number;
11553
- angle: number;
11554
- borderRaidus: number;
11555
- /**
11556
- * 원호 두께.
11557
- */
11558
- get thickness(): PercentSize;
11559
- set thickness(value: PercentSize);
11560
- parse(series: ISeries): void;
11561
- protected _assignTo(proxy: any): any;
11562
- }
11563
- declare class PieSeriesText extends IconedText<PieSeriesTextOptions> {
11564
- getDefaultIconPos(): IconPosition;
11877
+ declare class SplineSeries extends LineSeries<SplineSeriesOptions> {
11878
+ static readonly type = "spline";
11879
+ get canPolar(): boolean;
11880
+ _viewType(): string;
11881
+ getLineType(): LineType;
11565
11882
  }
11566
- declare class PieSeriesLabel extends WidgetSeriesLabel<PieSeriesLabelOptions> {
11567
- static readonly INSIDE_DIST: IPercentSize;
11568
- static readonly INNER_DIST: IPercentSize;
11569
- static readonly OUTSIDE_DIST = 25;
11570
- static readonly ENDED_DIST = 10;
11571
- static defaults: PieSeriesLabelOptions;
11572
- getDistance(inner: boolean, rd: number, rdInner: number): number;
11883
+ declare class AreaSeriesPoint extends LineSeriesPoint {
11884
+ yLow: number;
11573
11885
  }
11574
11886
  /**
11575
- * Pie 시리즈 모델.<br/>
11576
- * {@page op.SeriesOptions#type}은 {@page config.series.pie 'pie'}이고,
11577
- * {@page options 설정} 모델은 {@page op.PieSeriesOptions}이다.
11887
+ * Area 시리즈 모델.<br/>
11888
+ * 대부분 {@page config.series.line 'line'} 시리즈와 동일하고 라인 아래 부분을 별도의 색상으로 채운다.<br/>
11889
+ * {@page op.SeriesOptions#type} {@page config.series.area 'area'}이고,
11890
+ * {@page options 옵션} 모델은 {@page opt.AreaSeriesOptions}이다.
11578
11891
  */
11579
- declare class PieSeries extends RadialSeries<PieSeriesOptions> {
11580
- static readonly type = "pie";
11581
- static defaults: PieSeriesOptions;
11582
- private _innerRadius;
11583
- private _sliceOffset;
11584
- private _innerText;
11585
- private _innerRadiusDim;
11586
- private _sliceOffsetDim;
11587
- _groupPos: number;
11588
- _groupSize: number;
11589
- _startRad: number;
11590
- _totalRad: number;
11892
+ declare class AreaSeries<OP extends AreaSeriesOptions = AreaSeriesOptions> extends LineSeries<OP> {
11893
+ static readonly type: string;
11894
+ _areas: PointLine[];
11591
11895
  protected _doInitChildren(op: {
11592
11896
  [child: string]: ChartItemOptions;
11593
11897
  }): void;
11594
11898
  /**
11595
- * {@page innerRadius}가 0보다 때, 도넛 내부에 표시되는 텍스트.
11596
- * 기본 클래스 selector는 <b>'rct-pie-series-inner'</b>이다.
11899
+ * 미리 생성된 line들을 기준으로 area들을 생성한다.
11597
11900
  */
11598
- get innerText(): PieSeriesText;
11599
- followPointer(): boolean;
11600
- hasInner(): boolean;
11601
- getInnerRadius(rd: number): number;
11602
- getSliceOffset(rd: number): number;
11603
- get pointLabel(): PieSeriesLabel;
11604
- protected _createLabel(chart: IChart): PieSeriesLabel;
11605
- protected _createPoint(source: any): PieSeriesPoint;
11606
- protected _doApply(options: PieSeriesOptions): void;
11607
- protected _doPrepareRender(): void;
11901
+ prepareAreas(): void;
11902
+ isBased(axis: IAxis): boolean;
11903
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
11904
+ protected _createPoint(source: any): AreaSeriesPoint;
11905
+ protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
11608
11906
  }
11609
11907
  /**
11610
- * Pie 시리즈그룹 모델.<br/>
11611
- * {@page op.SeriesOptions#type}은 {@page config.series.piegroup 'piegroup'}이고,
11612
- * {@page options 옵션} 모델은 {@page op.PieSeriesGroupOptions}이다.
11908
+ * [low, high|y]
11909
+ * [x, low, high|y]
11613
11910
  */
11614
- declare class PieSeriesGroup extends SeriesGroup<PieSeries, PieSeriesGroupOptions> {
11615
- static readonly type = "piegroup";
11616
- static readonly seriesType = "pie";
11617
- static defaults: PieSeriesGroupOptions;
11618
- private _polarSize;
11619
- private _innerSize;
11620
- private _polarDim;
11621
- private _innerDim;
11622
- getPolarSize(width: number, height: number): number;
11623
- getInnerRadius(rd: number): number;
11624
- protected _doApply(options: PieSeriesGroupOptions): void;
11625
- needAxes(): boolean;
11626
- protected _canContain(ser: Series): boolean;
11627
- protected _doPrepareSeries(series: PieSeries[]): void;
11628
- }
11629
-
11630
- declare class ScatterSeriesPoint extends DataPoint {
11911
+ declare class AreaRangeSeriesPoint extends AreaSeriesPoint {
11912
+ low: any;
11913
+ lowValue: number;
11914
+ get high(): number;
11915
+ get highValue(): number;
11916
+ px2: number;
11917
+ py2: number;
11918
+ getPointLabel(index: number): any;
11919
+ labelCount(): number;
11920
+ protected _assignTo(proxy: any): any;
11921
+ protected _valuesChangd(prev: any): boolean;
11922
+ protected _readArray(series: AreaRangeSeries, v: any[]): void;
11923
+ protected _readObject(series: AreaRangeSeries, v: any): void;
11924
+ protected _readSingle(v: any): void;
11925
+ parse(series: AreaRangeSeries): void;
11926
+ initValues(): void;
11927
+ initPrev(axis: IAxis, prev: any): void;
11928
+ applyValueRate(prev: any, vr: number): void;
11631
11929
  }
11632
11930
  /**
11633
- * Scatter 시리즈.<br/>
11634
- * {@page op.SeriesOptions#type}은 {@page config.series.scatter 'scatter'}이고,
11635
- * {@page options 설정} 모델은 {@page op.ScatterSeriesOptions}이다.
11931
+ * AreaRange 시리즈 모델.<br/>
11932
+ * {@page op.SeriesOptions#type}은 {@page config.series.arearange 'arearange'}이고,
11933
+ * {@page options 옵션} 모델은 {@page op.AreaRangeSeriesOptions}이다.
11636
11934
  */
11637
- declare class ScatterSeries extends MarkerSeries<ScatterSeriesOptions> {
11638
- static readonly type = "scatter";
11639
- static defaults: ScatterSeriesOptions;
11640
- _defShape: Shape;
11641
- protected _createPoint(source: any): DataPoint;
11935
+ declare class AreaRangeSeries extends LineSeriesBase<AreaRangeSeriesOptions> {
11936
+ static readonly type = "arearange";
11937
+ static defaults: AreaRangeSeriesOptions;
11938
+ pointLabelCount(): number;
11939
+ protected _createLabel(chart: IChart): LinePointLabel;
11642
11940
  protected _createLegendMarker(doc: Document, size: number): RcElement;
11643
- _colorByPoint(): boolean;
11644
- /**
11645
- * rendering 시점에 chart가 series별로 기본 shape를 지정한다.
11646
- */
11647
- setShape(shape: Shape): void;
11648
- get canPolar(): boolean;
11649
- getShape(p: ScatterSeriesPoint): Shape;
11650
- hasShape(): boolean;
11651
- legendMarker(doc: Document, size: number): RcElement;
11941
+ protected _createPoint(source: any): AreaRangeSeriesPoint;
11942
+ getLineType(): LineType;
11943
+ collectValues(axis: IAxis, vals: number[]): void;
11944
+ protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
11652
11945
  }
11653
-
11654
- /** @internal */
11655
- declare class Color {
11656
- static isBright(color: string): boolean;
11657
- static getContrast(color: string, darkColor?: string, brightColor?: string): string;
11658
- private r;
11659
- private g;
11660
- private b;
11661
- private a;
11662
- constructor(color?: string);
11663
- get rgba(): string;
11664
- isBright(): boolean;
11665
- getContrast(darkColor: string, brightColor: string): string;
11666
- brighten(rate: number, color?: Color): Color;
11667
- toString(): string;
11668
- private $_parseRgb;
11669
- private $_parseNumber;
11946
+ /**
11947
+ * Line 시리즈그룹 모델.<br/>
11948
+ * {@page op.SeriesOptions#type}은 {@page config.series.linegroup 'linegroup'}이고,
11949
+ * {@page options 옵션} 모델은 {@page op.LineSeriesGroupOptions}이다.
11950
+ */
11951
+ declare class LineSeriesGroup extends SeriesGroup<LineSeries, LineSeriesGroupOptions> {
11952
+ static readonly type = "linegroup";
11953
+ static readonly seriesType = "line";
11954
+ static defaults: LineSeriesGroupOptions;
11955
+ protected _canContain(ser: Series): boolean;
11956
+ getBaseValue(axis: IAxis): number;
11670
11957
  }
11671
-
11672
11958
  /**
11673
- * [y, id, group]
11674
- * [x, y, id, group]
11959
+ * Area 시리즈 그룹.<br/>
11960
+ * {@page op.SeriesOptions#type}은 **'areagroup'** 이고,
11961
+ * {@page options 옵션} 모델은 {@page op.BarSeriesGroupOptions}이다.
11675
11962
  */
11676
- declare class TreemapSeriesPoint extends DataPoint {
11677
- id: string;
11678
- group: string;
11679
- protected _assignTo(proxy: any): any;
11680
- protected _readArray(series: TreemapSeries, v: any[]): void;
11681
- protected _readObject(series: TreemapSeries, v: any): void;
11682
- }
11683
- interface IArea {
11684
- x: number;
11685
- y: number;
11686
- width: number;
11687
- height: number;
11688
- }
11689
- declare class TreeNode {
11690
- point: TreemapSeriesPoint;
11691
- parent: TreeNode;
11692
- expaned: boolean;
11693
- children: TreeNode[];
11694
- index: number;
11695
- value: number;
11696
- x: number;
11697
- y: number;
11698
- width: number;
11699
- height: number;
11700
- _color: Color;
11701
- constructor(point: TreemapSeriesPoint);
11702
- level(): number;
11703
- getArea(): IArea;
11704
- setArea(x: number, y: number, w: number, h: number): void;
11705
- getTotal(): number;
11963
+ declare class AreaSeriesGroup extends SeriesGroup<AreaSeries, AreaSeriesGroupOptions> {
11964
+ static readonly type = "areagroup";
11965
+ static readonly seriesType = "area";
11966
+ static defaults: AreaSeriesGroupOptions;
11967
+ prepareLines(series: AreaSeries): void;
11968
+ protected _canContain(ser: Series): boolean;
11969
+ getBaseValue(axis: IAxis): number;
11706
11970
  }
11971
+
11707
11972
  /**
11708
- * Treemap 시리즈.<br/>
11709
- * {@page op.SeriesOptions#type} {@page config.series.treemap 'treemap'}이고,
11710
- * {@page options 설정} 모델은 {@page op.TreemapSeriesOptions}이다.
11711
- */
11712
- declare class TreemapSeries extends Series<TreemapSeriesOptions> {
11713
- static readonly type = "treemap";
11714
- static defaults: TreemapSeriesOptions;
11715
- _roots: TreeNode[];
11716
- _leafs: TreeNode[];
11717
- private _map;
11718
- private _levels;
11719
- /**
11720
- * group mode일 때 group 레벨별 표시 방식 지정.
11721
- * TODO: 구현할 것!
11722
- */
11723
- /**
11724
- * @internal
11725
- */
11726
- buildMap(width: number, height: number): {
11727
- roots: TreeNode[];
11728
- leafs: TreeNode[];
11729
- };
11730
- needAxes(): boolean;
11731
- canMixWith(other: IPlottingItem): boolean;
11973
+ * Bar 시리즈 계열의 기반(base) 모델.<br/>
11974
+ * {@page options 설정} 모델은 {@page op.BarSeriesBaseOptions}이다.
11975
+ */
11976
+ declare abstract class BarSeriesBase<OP extends BarSeriesBaseOptions = BarSeriesBaseOptions> extends BasedSeries<OP> {
11977
+ static defaults: BarSeriesBaseOptions;
11978
+ canCategorized(): boolean;
11979
+ _colorByPoint(): boolean;
11732
11980
  protected _createPoint(source: any): DataPoint;
11733
- _getLabeledPoints(): DataPoint[];
11734
- protected _doPrepareRender(): void;
11735
- private $_buildTree;
11736
- private $_squarifyRow;
11737
- private $_squarify;
11738
- private squarify;
11739
- private strip;
11740
- private $_sliceNext;
11741
- private $_slice;
11742
- private slice;
11743
- private sliceDice;
11981
+ protected _getGroupBase(): number;
11744
11982
  }
11745
-
11746
11983
  /**
11747
- * Vector 시리즈 모델.<br/>
11748
- * {@page op.SeriesOptions#type}은 {@page config.series.vecotor 'vector'}이고,
11749
- * {@page options 설정} 모델은 {@page op.VectorSeriesOptions}이다.
11984
+ * Bar 시리즈 모델.<br/>
11985
+ * {@page op.SeriesOptions#type}은 {@page config.series.bar 'bar'}이고,
11986
+ * {@page options 설정} 모델은 {@page op.BarSeriesOptions}이다.
11750
11987
  */
11751
- declare class VectorSeries extends ConnectableSeries<VectorSeriesOptions> {
11752
- static readonly type = "vector";
11753
- static defaults: VectorSeriesOptions;
11754
- protected _createPoint(source: any): DataPoint;
11755
- protected _doPrepareRender(): void;
11988
+ declare class BarSeries extends BarSeriesBase<BarSeriesOptions> {
11989
+ static readonly type = "bar";
11756
11990
  protected _createLegendMarker(doc: Document, size: number): RcElement;
11757
- }
11758
-
11759
- declare class WaterfallSeriesPoint extends DataPoint {
11760
- _isSum: boolean;
11761
- _intermediate: boolean;
11762
- save: number;
11763
- low: number;
11764
- parse(series: WaterfallSeries): void;
11991
+ get canPolar(): boolean;
11765
11992
  }
11766
11993
  /**
11767
- * 폭포(Waterfall) 시리즈 모델.<br/>
11768
- * {@page op.SeriesOptions#type}은 {@page config.series.waterfall 'waterfall'}이고,
11769
- * {@page options 설정} 모델은 {@page op.WaterfallSeriesOptions}이다.
11994
+ * {@page BarSeries}, {@page CircleBarSeires}의 그룹 기반 모델.
11770
11995
  */
11771
- declare class WaterfallSeries extends RangedSeries<WaterfallSeriesOptions> {
11772
- static readonly type = "waterfall";
11996
+ declare abstract class BarSeriesGroupBase<T extends BarSeriesBase, OP extends BarSeriesGroupBaseOptions<BarSeriesBaseOptions>> extends ClusterableSeriesGroup<T, OP> implements IClusterable {
11997
+ static defaults: BarSeriesGroupBaseOptions<BarSeriesBaseOptions>;
11773
11998
  canCategorized(): boolean;
11774
- protected _createPoint(source: any): DataPoint;
11775
- protected _createLegendMarker(doc: Document, size: number): RcElement;
11776
- protected _doPrepareRender(): void;
11777
- protected _getBottomValue(p: WaterfallSeriesPoint): number;
11999
+ getBaseValue(axis: IAxis): number;
12000
+ protected _doPrepareSeries(series: T[]): void;
11778
12001
  }
11779
-
11780
12002
  /**
11781
- * 원형게이지 테두리(rim) 모델 기반 클래스<br/>
11782
- * {@page options} 모델은 {@page op.CircleGaugeRimBaseOptions}이다.
12003
+ * Bar 시리즈 그룹.<br/>
12004
+ * {@page op.SeriesOptions#type} {@page config.series.bargroup 'bargroup'}이고,
12005
+ * {@page options 옵션} 모델은 {@page op.BarSeriesGroupOptions}이다.
11783
12006
  */
11784
- declare abstract class CircleGaugeRimBase<OP extends CircleGaugeRimBaseOptions = CircleGaugeRimBaseOptions> extends GaugeItem<OP> {
11785
- static defaults: CircleGaugeRimBaseOptions;
11786
- private _ranges;
11787
- private _runRanges;
11788
- getRange(bounds: {
11789
- minValue?: number;
11790
- maxValue?: number;
11791
- }, value: number): ValueRange | undefined;
11792
- protected _doApply(options: CircleGaugeRimBaseOptions): void;
11793
- private $_internalRanges;
12007
+ declare class BarSeriesGroup extends BarSeriesGroupBase<BarSeries, BarSeriesGroupOptions> {
12008
+ static readonly type = "bargroup";
12009
+ static readonly seriesType = "bar";
12010
+ protected _canContain(ser: Series): boolean;
11794
12011
  }
12012
+
11795
12013
  /**
11796
- * 원형게이지 테두리(rim) 모델.<br/>
11797
- * {@page options} 모델은 {@page op.CircleGaugeRimOptions}이다.
12014
+ * BarRange 시리즈 모델.<br/>
12015
+ * {@page op.SeriesOptions#type} {@page config.series.barrange 'barrange'}이고,
12016
+ * {@page options 옵션} 모델은 {@page op.BarRangeSeriesOptions}이다.
11798
12017
  */
11799
- declare class CircleGaugeRim extends CircleGaugeRimBase<CircleGaugeRimOptions> {
11800
- static defaults: CircleGaugeRimOptions;
11801
- private _segmentThicknessDim;
11802
- getSegmentThickness(domain: number): number;
11803
- protected _doApply(options: CircleGaugeRimOptions): void;
12018
+ declare class BarRangeSeries extends LowRangedSeries<BarRangeSeriesOptions> {
12019
+ static readonly type: string;
12020
+ static defaults: BarRangeSeriesOptions;
12021
+ _lowFielder: (src: any) => any;
12022
+ pointLabelCount(): number;
12023
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12024
+ protected _getFielderProps(): string[];
12025
+ protected _createPoint(source: any): DataPoint;
12026
+ protected _getBottomValue(p: RangedPoint): number;
12027
+ }
12028
+
12029
+ declare class BellCurveSeriesPoint extends AreaSeriesPoint {
11804
12030
  }
11805
12031
  /**
11806
- * 값을 표시하는 테두리(rim) 모델.<br/>
11807
- * {@page options} 모델은 {@page op.CircleGaugeValueRimOptions}이다.
12032
+ * BellCurve 시리즈.<br/>
12033
+ * {@page op.SeriesOptions#type} {@page config.series.bellcurve 'bellcurve'}이고,
12034
+ * {@page options 설정} 모델은 {@page op.BellCurveSeriesOptions}이다.
11808
12035
  */
11809
- declare class CircleGaugeValueRim extends CircleGaugeRimBase<CircleGaugeValueRimOptions> {
11810
- static defaults: CircleGaugeValueRimOptions;
11811
- private _thicknessDim;
11812
- getThickness(domain: number): number;
11813
- protected _doApply(options: CircleGaugeValueRimOptions): void;
12036
+ declare class BellCurveSeries extends AreaSeries<BellCurveSeriesOptions> {
12037
+ static readonly type = "bellcurve";
12038
+ static defaults: BellCurveSeriesOptions;
12039
+ getLineType(): LineType;
12040
+ protected _createPoint(source: any): BellCurveSeriesPoint;
12041
+ protected _doLoadData(src: any): any[];
12042
+ _referOtherSeries(series: Series): boolean;
12043
+ reference(other: Series, axis: IAxis): void;
12044
+ private _loadTable;
11814
12045
  }
12046
+
11815
12047
  /**
11816
- * 원형게이지 침(hand) 모델.<br/>
11817
- * {@page options} 모델은 {@page op.CircleGaugeHandOptions}이다.
12048
+ * [min, low, mid, high, max|y]
12049
+ * [x, min, low, mid, high, max|y]
11818
12050
  */
11819
- declare class CircleGaugeHand extends GaugeItem<CircleGaugeHandOptions> {
11820
- static defaults: CircleGaugeHandOptions;
11821
- private _radiusDim;
11822
- private _lengthDim;
11823
- private _offsetDim;
11824
- getExtents(domain: number): {
11825
- radius: number;
11826
- length: number;
11827
- offset: number;
11828
- };
11829
- protected _doApply(options: CircleGaugeHandOptions): void;
12051
+ declare class BoxPlotSeriesPoint extends DataPoint {
12052
+ min: any;
12053
+ low: any;
12054
+ mid: any;
12055
+ high: any;
12056
+ minValue: number;
12057
+ lowValue: number;
12058
+ midValue: number;
12059
+ highValue: number;
12060
+ minLabel: any;
12061
+ get max(): number;
12062
+ get maxValue(): number;
12063
+ lowPos: number;
12064
+ midPos: number;
12065
+ highPos: number;
12066
+ labelCount(): number;
12067
+ getPointLabel(index: number): any;
12068
+ getPointText(index: number): any;
12069
+ protected _assignTo(proxy: any): any;
12070
+ protected _valuesChangd(prev: any): boolean;
12071
+ protected _readArray(series: BoxPlotSeries, v: any[]): void;
12072
+ protected _readObject(series: BoxPlotSeries, v: any): void;
12073
+ protected _readSingle(v: any): void;
12074
+ parse(series: BoxPlotSeries): void;
12075
+ initValues(): void;
12076
+ initPrev(axis: IAxis, prev: any): void;
12077
+ applyValueRate(prev: any, vr: number): void;
11830
12078
  }
11831
12079
  /**
11832
- * 원형게이지 모델.<br/>
11833
- * {@page options} 모델은 {@page op.CircleGaugePinOptions}이다.
12080
+ * {@page https://en.wikipedia.org/wiki/Box_plot BoxPlot} 시리즈.<br/>
12081
+ * {@page op.SeriesOptions#type} {@page config.series.boxplot 'boxplot'}이고,
12082
+ * {@page options 설정} 모델은 {@page op.BoxPlotSeriesOptions}이다.
11834
12083
  */
11835
- declare class CircleGaugePin extends GaugeItem<CircleGaugePinOptions> {
11836
- static defaults: CircleGaugePinOptions;
11837
- private _radiusDim;
11838
- getRadius(domain: number): number;
11839
- protected _doApply(options: CircleGaugePinOptions): void;
12084
+ declare class BoxPlotSeries extends LowRangedSeries<BoxPlotSeriesOptions> {
12085
+ static readonly type = "boxplot";
12086
+ static defaults: BoxPlotSeriesOptions;
12087
+ _minFielder: (src: any) => any;
12088
+ _lowFielder: (src: any) => any;
12089
+ _midFielder: (src: any) => any;
12090
+ _highFielder: (src: any) => any;
12091
+ pointLabelCount(): number;
12092
+ canCategorized(): boolean;
12093
+ protected _getFielderProps(): string[];
12094
+ protected _createPoint(source: any): DataPoint;
12095
+ protected _getBottomValue(p: BoxPlotSeriesPoint): number;
12096
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
11840
12097
  }
12098
+
11841
12099
  /**
11842
- * 원형게이지 자(scale) 모델.<br/>
11843
- * {@page options} 모델은 {@page op.CircleGaugeScaleOptions}이다.
12100
+ * 버블 시리즈 모델.<br/>
12101
+ * {@page op.SeriesOptions#type} {@page config.series.bubble 'bubble'}이고,
12102
+ * {@page options 설정} 모델은 {@page op.BubbleSeriesOptions}이다.
11844
12103
  */
11845
- declare class CircleGaugeScale extends GaugeScale<CircleGaugeScaleOptions> {
11846
- static defaults: CircleGaugeScaleOptions;
11847
- protected _getStepMultiples(step: number): number[];
12104
+ declare class BubbleSeries extends MarkerSeries<BubbleSeriesOptions> {
12105
+ static readonly type: string;
12106
+ static defaults: BubbleSeriesOptions;
12107
+ private _minSizeDim;
12108
+ private _maxSizeDim;
12109
+ _zMin: number;
12110
+ _zMax: number;
12111
+ _noSize: boolean;
12112
+ getShape(): Shape;
12113
+ getPixelMinMax(len: number): {
12114
+ min: number;
12115
+ max: number;
12116
+ };
12117
+ getRadius(value: number, pxMin: number, pxMax: number): number;
12118
+ protected _doApply(options: BubbleSeriesOptions): void;
12119
+ protected _createPoint(source: any): DataPoint;
12120
+ protected _getNoClip(polar: boolean): boolean;
12121
+ get canPolar(): boolean;
12122
+ hasZ(): boolean;
12123
+ _colorByPoint(): boolean;
12124
+ protected _doPrepareRender(): void;
12125
+ protected _getRangeMinMax(axis: "x" | "y" | "z"): {
12126
+ min: number;
12127
+ max: number;
12128
+ };
11848
12129
  }
12130
+
11849
12131
  /**
11850
- * 원형 게이지 모델.<br/>
11851
- * {@page op.GaugeOptions#type}은 **'circle'** 이고,
11852
- * {@page options 설정} 모델은 {@page op.CircleGaugeOptions}이다.
12132
+ * Bump 시리즈.<br/>
12133
+ * {@page op.SeriesOptions#type}은 {@page config.series.bump 'bump'}이고,
12134
+ * {@page options 설정} 모델은 {@page op.BumpSeriesGroupOptions}이다.
11853
12135
  */
11854
- declare class CircleGauge extends CircularGauge<CircleGaugeOptions> {
11855
- static readonly type: string;
11856
- private _band;
11857
- private _scale;
11858
- private _rim;
11859
- private _valueRim;
11860
- private _hand;
11861
- private _pin;
11862
- protected _doInitChildren(op: {
11863
- [child: string]: ChartItemOptions;
11864
- }): void;
11865
- /**
11866
- * 게이지 본체 주변이나 내부에 값 영역들을 구분해서 표시하는 band의 모델.
11867
- */
11868
- get band(): GaugeRangeBand;
11869
- /**
11870
- * 스케일 모델.
11871
- */
11872
- get scale(): CircleGaugeScale;
11873
- /**
11874
- * 게이지 배경 원호 테두리 설정 모델.
11875
- */
11876
- get rim(): CircleGaugeRim;
11877
- /**
11878
- * 게이지의 값 원호 테두리 설정 모델.
11879
- */
11880
- get valueRim(): CircleGaugeValueRim;
11881
- /**
11882
- * 게이지 바늘 설정 모델.
11883
- */
11884
- get hand(): CircleGaugeHand;
11885
- /**
11886
- * 게이지 중앙에 표시되는 핀 설정 모델.
11887
- */
11888
- get pin(): CircleGaugePin;
11889
- getExtents(gaugeSize: number): ICircularGaugeExtents;
12136
+ declare class BumpSeriesGroup extends ConstraintSeriesGroup<LineSeries, BumpSeriesGroupOptions> {
12137
+ static readonly type = "bump";
12138
+ static readonly seriesType = "line";
12139
+ protected _canContain(ser: Series): boolean;
12140
+ protected _doConstraintYValues(series: Series[]): number[];
11890
12141
  }
11891
- declare class CircleGaugeGroup extends CircularGaugeGroup<CircleGauge, CircleGaugeGroupOptions> {
11892
- static readonly type = "circlegroup";
11893
- static readonly gaugeType = "circle";
11894
- static defaults: CircleGaugeGroupOptions;
11895
- _gaugesType(): string;
12142
+
12143
+ /**
12144
+ * [low, open, close, high|y]
12145
+ * [x, low, open, close, high|y]
12146
+ */
12147
+ declare class CandlestickSeriesPoint extends DataPoint {
12148
+ low: any;
12149
+ close: any;
12150
+ open: any;
12151
+ lowValue: number;
12152
+ closeValue: number;
12153
+ openValue: number;
12154
+ get high(): number;
12155
+ get highValue(): number;
12156
+ protected _assignTo(proxy: any): any;
12157
+ protected _valuesChangd(prev: any): boolean;
12158
+ protected _readArray(series: CandlestickSeries, v: any[]): void;
12159
+ protected _readObject(series: CandlestickSeries, v: any): void;
12160
+ protected _readSingle(v: any): void;
12161
+ parse(series: CandlestickSeries): void;
12162
+ initValues(): void;
12163
+ initPrev(axis: IAxis, prev: any): void;
12164
+ applyValueRate(prev: any, vr: number): void;
11896
12165
  }
11897
-
11898
12166
  /**
11899
- * 선형게이지 라벨 모델.<br/>
11900
- * {@page options} 모델은 {@page op.LinearGaugeLabelOptions}이다.
12167
+ * Candlestick 시리즈.<br/>
12168
+ * {@page op.SeriesOptions#type} {@page config.series.candlestick 'candlestick'}이고,
12169
+ * {@page options 설정} 모델은 {@page op.CandlestickSeriesOptions}이다.
11901
12170
  */
11902
- declare class LinearGaugeLabel<OP extends LinearGaugeLabelOptions = LinearGaugeLabelOptions> extends GaugeLabel<OP> {
11903
- static defaults: LinearGaugeLabelOptions;
11904
- private _widthDim;
11905
- private _heightDim;
11906
- private _maxWidthDim;
11907
- private _maxHeightDim;
11908
- private _gapDim;
11909
- _runPos: 'left' | 'right' | 'top' | 'bottom';
11910
- _runGap: number;
11911
- _runVert: boolean;
11912
- getWidth(domain: number): number;
11913
- getHeight(domain: number): number;
11914
- getMaxWidth(domain: number): number;
11915
- getMaxHeight(domain: number): number;
11916
- getGap(domain: number): number;
11917
- protected _doApply(options: LinearGaugeLabelOptions): void;
12171
+ declare class CandlestickSeries<OP extends CandlestickSeriesOptions = CandlestickSeriesOptions> extends LowRangedSeries<OP> {
12172
+ static readonly type: string;
12173
+ static defaults: CandlestickSeriesOptions;
12174
+ canCategorized(): boolean;
12175
+ protected _createPoint(source: any): DataPoint;
12176
+ protected _getBottomValue(p: CandlestickSeriesPoint): number;
12177
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
11918
12178
  }
11919
- /**
11920
- * 선형 게이지 모델들의 기반 클래스.<br/>
11921
- * {@page options} 모델은 {@page op.LinearGaugeBaseOptions}이다.
11922
- */
11923
- declare abstract class LinearGaugeBase<OP extends LinearGaugeBaseOptions = LinearGaugeBaseOptions> extends ValueGauge<OP> {
11924
- static defaults: LinearGaugeBaseOptions;
11925
- private _label;
11926
- private _scale;
11927
- protected _doInitChildren(op: {
11928
- [child: string]: ChartItemOptions;
11929
- }): void;
11930
- /**
11931
- * label 설정 모델.
11932
- *
11933
- * @config
11934
- */
11935
- get label(): LinearGaugeLabel<LinearGaugeLabelOptions>;
11936
- /**
11937
- * scale.
11938
- *
11939
- * @config
11940
- */
11941
- get scale(): LinearGaugeScale;
11942
- isVertical(): boolean;
11943
- scaleVisible(): boolean;
11944
- calcedMinMax(): IMinMax;
11945
- protected _doPrepareRender(chart: IChart): void;
12179
+
12180
+ declare class CircelBarPointLabel extends DataPointLabel<DataPointLabelOptions> {
12181
+ static defaults: CircleBarPointLabelOptions;
11946
12182
  }
11947
12183
  /**
11948
- * linear 게이지의 값을 표시하는 영역에 대한 설정 모델.<br/>
11949
- * {@page options} 모델은 {@page op.LinearValueBarOptions}이다.
12184
+ * CirleBar 시리즈.<br/>
12185
+ * {@page op.SeriesOptions#type} {@page config.series.circlebar 'circlebar'}이고,
12186
+ * {@page options 설정} 모델은 {@page op.CircleBarSeriesOptions}이다.
11950
12187
  */
11951
- declare class LinearValueBar<OP extends LinearValueBarOptions = LinearValueBarOptions> extends GaugeItem<OP> {
11952
- private _args;
11953
- getStyle(gauge: LinearGaugeBase, value: number): SVGStyleOrClass;
12188
+ declare class CircleBarSeries extends BarSeriesBase<CircleBarSeriesOptions> {
12189
+ static readonly type = "circlebar";
12190
+ get pointLabel(): CircelBarPointLabel;
12191
+ protected _createLabel(chart: IChart): CircelBarPointLabel;
11954
12192
  }
11955
12193
  /**
11956
- * 선형 게이지 모델.<br/>
11957
- * {@page op.GaugeOptions#type}은 **'linear'** 이고,
11958
- * {@page options 설정} 모델은 {@page op.LinearGaugeOptions}이다.
12194
+ * CircleBar 시리즈 그룹.<br/>
12195
+ * {@page op.SeriesOptions#type}은 {@page config.series.circlebargroup 'circlebargroup'}이고,
12196
+ * {@page options 설정} 모델은 {@page op.CircleBarSeriesGroupOptions}이다.
11959
12197
  */
11960
- declare class LinearGauge extends LinearGaugeBase<LinearGaugeOptions> {
11961
- static readonly type = "linear";
11962
- private _valueBar;
11963
- private _band;
11964
- protected _doInitChildren(op: {
11965
- [child: string]: ChartItemOptions;
11966
- }): void;
11967
- /**
11968
- * 게이지 값을 표시하는 bar 모델.
11969
- */
11970
- get valueBar(): LinearValueBar<LinearValueBarOptions>;
11971
- /**
11972
- * 게이지 본체 주변이나 내부에 값 영역들을 구분해서 표시하는 band의 모델.
11973
- *
11974
- * @config
11975
- */
11976
- get band(): GaugeRangeBand;
12198
+ declare class CircleBarSeriesGroup extends BarSeriesGroupBase<CircleBarSeries, CircleBarSeriesGroupOptions> implements IClusterable {
12199
+ static readonly type = "circlebargroup";
12200
+ static readonly seriesType = "circlebar";
12201
+ protected _canContain(ser: Series): boolean;
11977
12202
  }
12203
+
11978
12204
  /**
11979
- * 선형 그룹게이지의 자식 라벨 모델.<br/>
11980
- * {@page options} 모델은 {@page op.LinearGaugeChildLabelOptions}이다.
12205
+ * [low, y]
12206
+ * [x, low, y]
11981
12207
  */
11982
- declare class LinearGaugeChildLabel extends ChartItem<LinearGaugeChildLabelOptions> {
11983
- static defaults: LinearGaugeChildLabelOptions;
12208
+ declare class DumbbellSeriesPoint extends RangedPoint {
12209
+ hPoint: number;
12210
+ radius: number;
12211
+ shape: Shape;
12212
+ lowRadius: number;
12213
+ lowShape: Shape;
11984
12214
  }
11985
- /**
11986
- * 선형 그룹게이지의 그룹 라벨 모델.<br/>
11987
- * {@page options} 모델은 {@page op.LinearGaugeGroupLabelOptions}이다.
11988
- */
11989
- declare class LinearGaugeGroupLabel extends LinearGaugeLabel<LinearGaugeGroupLabelOptions> {
11990
- static defaults: LinearGaugeGroupLabelOptions;
12215
+ declare class DumbbellSeriesMarker extends SeriesMarker<DumbbellSeriesMarkerOptions> {
12216
+ static defaults: DumbbellSeriesMarkerOptions;
11991
12217
  }
11992
12218
  /**
11993
- * 선형 그룹게이지 모델들의 기반 클래스.<br/>
11994
- * {@page options} 모델은 {@page op.LinearGaugeGroupBaseOptions}이다.
12219
+ * Dumbbell 시리즈.<br/>
12220
+ * {@page op.SeriesOptions#type} {@page config.series.dumbbell 'dumbbell'}이고,
12221
+ * {@page options 설정} 모델은 {@page op.DumbbellSeriesOptions}이다.
11995
12222
  */
11996
- declare abstract class LinearGaugeGroupBase<T extends LinearGaugeBase = LinearGaugeBase, OP extends LinearGaugeGroupBaseOptions<LinearGaugeBaseOptions> = LinearGaugeGroupBaseOptions<LinearGaugeBaseOptions>> extends GaugeGroup<T, OP> {
11997
- static defaults: LinearGaugeGroupBaseOptions<LinearGaugeBaseOptions>;
11998
- private _label;
11999
- private _itemLabel;
12000
- private _scale;
12001
- _labelWidth: number;
12002
- _labelHeight: number;
12223
+ declare class DumbbellSeries extends LowRangedSeries<DumbbellSeriesOptions> {
12224
+ static readonly type = "dumbbell";
12225
+ private _marker;
12226
+ private _lowMarker;
12003
12227
  protected _doInitChildren(op: {
12004
12228
  [child: string]: ChartItemOptions;
12005
12229
  }): void;
12006
- /**
12007
- * label 설정 모델.
12008
- *
12009
- * @config
12010
- */
12011
- get label(): LinearGaugeGroupLabel;
12012
- /**
12013
- * 자식 게이지들의 label 표시 관련 속성 모델.
12014
- *
12015
- * @config
12016
- */
12017
- get itemLabel(): LinearGaugeChildLabel;
12018
- /**
12019
- * scale.
12020
- *
12021
- * @config
12022
- */
12023
- get scale(): LinearGaugeScale;
12024
- calcedMinMax(): IMinMax;
12230
+ get marker(): DumbbellSeriesMarker;
12231
+ get lowMarker(): DumbbellSeriesMarker;
12232
+ canCategorized(): boolean;
12233
+ protected _getBottomValue(p: DumbbellSeriesPoint): number;
12234
+ pointLabelCount(): number;
12235
+ getLabelOff(off: number): number;
12236
+ protected _createPoint(source: any): DataPoint;
12237
+ protected _doPrepareRender(): void;
12025
12238
  }
12239
+
12026
12240
  /**
12027
- * 선형 그룹게이지 모델.<br/>
12028
- * {@page options} 모델은 {@page op.LinearGaugeGroupOptions}이다.
12029
- *
12030
- * @config chart.gauge[type=lineargroup]
12241
+ * Bar를 여러 개의 segment로 나눠 표시하는 시리즈.<br/>
12242
+ * {@page op.SeriesOptions#type} {@page config.series.equalizer 'equalizer'}이고,
12243
+ * {@page options 설정} 모델은 {@page op.EqualizerSeriesOptions}이다.
12031
12244
  */
12032
- declare class LinearGaugeGroup extends LinearGaugeGroupBase<LinearGauge, LinearGaugeGroupOptions> {
12033
- static readonly type = "lineargroup";
12034
- static readonly gaugeType = "linear";
12035
- private _band;
12036
- protected _doInitChildren(op: {
12037
- [child: string]: ChartItemOptions;
12038
- }): void;
12039
- /**
12040
- * 게이지 본체 주변이나 내부에 값 영역들을 구분해서 표시하는 band의 모델.
12041
- *
12042
- * @config
12043
- */
12044
- get band(): GaugeRangeBand;
12045
- _gaugesType(): string;
12046
- protected _doPrepareRender(chart: IChart): void;
12245
+ declare class EqualizerSeries extends BasedSeries<EqualizerSeriesOptions> {
12246
+ static readonly type = "equalizer";
12247
+ static defaults: EqualizerSeriesOptions;
12248
+ private _segmentSizeDim;
12249
+ getSegmentSize(domain: number): number;
12250
+ protected _doApply(options: EqualizerSeriesOptions): void;
12251
+ canCategorized(): boolean;
12252
+ protected _createPoint(source: any): DataPoint;
12253
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12047
12254
  }
12048
12255
 
12049
12256
  /**
12050
- * Bullet 게이지 밴드 모델.<br/>
12051
- * {@page options} 모델은 {@page op.BulletGaugeBandOptions}이다.
12257
+ * ErrorBar 시리즈.<br/>
12258
+ * {@page op.SeriesOptions#type} {@page config.series.errorbar 'errorbar'}이고,
12259
+ * {@page options 설정} 모델은 {@page op.ErrorbarSeriesOptions}이다.
12052
12260
  */
12053
- declare class BulletGaugeBand extends ChartItem<BulletGaugeBandOptions> {
12054
- gauge: BulletGauge | BulletGaugeGroup;
12055
- static defaults: BulletGaugeBandOptions;
12056
- private _ranges;
12057
- private _runRanges;
12058
- constructor(gauge: BulletGauge | BulletGaugeGroup);
12059
- /**
12060
- * 범위 목록을 리턴한다.<br/>
12061
- * 범위별로 다른 스타일을 적용할 수 있다.
12062
- *
12063
- * @config
12064
- */
12065
- getRanges(): ValueRange[];
12066
- protected _doApply(options: BulletGaugeBandOptions): void;
12067
- private $_internalRanges;
12261
+ declare class ErrorBarSeries extends LowRangedSeries<ErrorBarSeriesOptions> {
12262
+ static readonly type = "errorbar";
12263
+ static defaults: ErrorBarSeriesOptions;
12264
+ isClusterable(): boolean;
12265
+ pointLabelCount(): number;
12266
+ protected _createPoint(source: any): DataPoint;
12267
+ getBaseValue(axis: IAxis): number;
12268
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12269
+ protected _getBottomValue(p: RangedPoint): number;
12270
+ }
12271
+
12272
+ declare class FunnelSeriesLabel extends WidgetSeriesLabel<FunnelSeriesLabelOptions> {
12273
+ static readonly OUTSIDE_DIST = 25;
12274
+ static readonly ENDED_DIST = 10;
12275
+ getDistance(): number;
12068
12276
  }
12069
12277
  /**
12070
- * Bullet 게이지 목표 bar 모델.<br/>
12071
- * {@page options} 모델은 {@page op.BulletTargetBarOptions}이다.
12278
+ * Funnel 시리즈 모델.<br/>
12279
+ * {@page op.SeriesOptions#type} {@page config.series.funnel 'funnel'}이고,
12280
+ * {@page options 설정} 모델은 {@page op.FunnelSeriesOptions}이다.
12072
12281
  */
12073
- declare class BulletTargetBar extends GaugeItem<BulletTargetBarOptions> {
12074
- static defaults: BulletTargetBarOptions;
12282
+ declare class FunnelSeries extends WidgetSeries<FunnelSeriesOptions> {
12283
+ static readonly type = "funnel";
12284
+ static defaults: FunnelSeriesOptions;
12285
+ private _width;
12286
+ private _height;
12287
+ private _neckWidth;
12288
+ private _neckHeight;
12289
+ private _widthDim;
12290
+ private _heightDim;
12291
+ private _neckWidthDim;
12292
+ private _neckHeightDim;
12293
+ getSize(plotWidth: number, plotHeight: number): Size;
12294
+ getNeckSize(width: number, height: number): Size;
12295
+ get pointLabel(): FunnelSeriesLabel;
12296
+ protected _createLabel(chart: IChart): FunnelSeriesLabel;
12297
+ protected _createPoint(source: any): DataPoint;
12298
+ protected _doApply(options: FunnelSeriesOptions): void;
12075
12299
  }
12300
+
12076
12301
  /**
12077
- * Bullet 게이지 값 bar 모델.<br/>
12078
- * {@page options} 모델은 {@page op.BulletValueBarOptions}이다.
12302
+ * [Histogram](https://en.wikipedia.org/wiki/Histogram) 시리즈 모델.<br/>
12303
+ * {@page op.SeriesOptions#type} {@page config.series.histogram 'histogram'}이고,
12304
+ * {@page options 설정} 모델은 {@page op.HistogramSeriesOptions}이다.
12079
12305
  */
12080
- declare class BulletValueBar extends LinearValueBar<BulletValueBarOptions> {
12306
+ declare class HistogramSeries extends ConnectableSeries<HistogramSeriesOptions> {
12307
+ static readonly type = "histogram";
12308
+ static defaults: HistogramSeriesOptions;
12309
+ _binInterval: number;
12310
+ private _base;
12311
+ getBinCount(length: number): number;
12312
+ protected _createPoint(source: any): DataPoint;
12313
+ protected _doLoadPoints(src: any[]): void;
12314
+ collectValues(axis: IAxis, vals: number[]): void;
12315
+ protected _doPrepareRender(): void;
12316
+ getBaseValue(axis: IAxis): number;
12317
+ isBased(axis: IAxis): boolean;
12318
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12319
+ }
12320
+
12321
+ declare class LollipopSeriesMarker extends SeriesMarker<LollipopSeriesMarkerOptions> {
12322
+ static defaults: LollipopSeriesMarkerOptions;
12081
12323
  }
12082
12324
  /**
12083
- * Bullet 게이지 모델.<br/>
12084
- * {@page op.GaugeOptions#type}은 {@page config.gauge.bullet 'bullet'}이고,
12085
- * {@page options 설정} 모델은 {@page op.BulletGaugeOptions}이다.
12325
+ * Lollipop(막대 사탕) 시리즈 모델.<br/>
12326
+ * {@page op.SeriesOptions#type}은 {@page config.series.lollipop 'lollipop'}이고,
12327
+ * {@page options 설정} 모델은 {@page op.LollipopSeriesOptions}이다.
12086
12328
  */
12087
- declare class BulletGauge extends LinearGaugeBase<BulletGaugeOptions> {
12088
- static readonly type = "bullet";
12089
- static defaults: BulletGaugeOptions;
12090
- private _band;
12091
- private _targetBar;
12092
- private _valueBar;
12329
+ declare class LollipopSeries extends BasedSeries<LollipopSeriesOptions> {
12330
+ static readonly type = "lollipop";
12331
+ private _marker;
12093
12332
  protected _doInitChildren(op: {
12094
12333
  [child: string]: ChartItemOptions;
12095
12334
  }): void;
12096
- /**
12097
- * 밴드.
12098
- *
12099
- * @config
12100
- */
12101
- get band(): BulletGaugeBand;
12102
- /**
12103
- * target bar.
12104
- *
12105
- * @config
12106
- */
12107
- get targetBar(): BulletTargetBar;
12108
- /**
12109
- * value bar.
12110
- *
12111
- * @config
12112
- */
12113
- get valueBar(): BulletValueBar;
12114
- getRanges(min: number, max: number, inclusive: boolean): ValueRange[];
12335
+ get marker(): LollipopSeriesMarker;
12336
+ canCategorized(): boolean;
12337
+ getLabelOff(off: number): number;
12338
+ protected _createPoint(source: any): DataPoint;
12339
+ protected _doPrepareRender(): void;
12115
12340
  }
12341
+
12116
12342
  /**
12117
- * Bullet 게이지그룹 모델.<br/>
12118
- * {@page op.GaugeOptions#type}은 {@page config.gauge.bulletgroup 'bulletgroup'}이고,
12119
- * {@page options} 모델은 {@page op.BulletGaugeGroupOptions}이다.
12343
+ * {@page https://en.wikipedia.org/wiki/Open-high-low-close_chart OHLC} 시리즈 모델.<br/>
12344
+ * {@page op.SeriesOptions#type}은 {@page config.series.ohlc 'ohlc'}이고,
12345
+ * {@page options 설정} 모델은 {@page op.OhlcSeriesOptions}이다.
12120
12346
  */
12121
- declare class BulletGaugeGroup extends LinearGaugeGroupBase<BulletGauge, BulletGaugeGroupOptions> {
12122
- static readonly type: string;
12123
- static readonly gaugeType = "bullet";
12124
- static defaults: BulletGaugeGroupOptions;
12125
- getRanges(min: number, max: number, inclusive: boolean): ValueRange[];
12126
- _gaugesType(): string;
12347
+ declare class OhlcSeries extends CandlestickSeries<OhlcSeriesOptions> {
12348
+ static readonly type = "ohlc";
12349
+ protected _createPoint(source: any): DataPoint;
12350
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12351
+ }
12352
+
12353
+ declare class ParetoSeriesPoint extends LineSeriesPoint {
12354
+ }
12355
+ /**
12356
+ * Pareto 시리즈<br/>
12357
+ * {@page op.SeriesOptions#type}은 {@page config.series.pareto 'pareto'}이고,
12358
+ * {@page options 설정} 모델은 {@page op.ParetoSeriesOptions}이다.
12359
+ */
12360
+ declare class ParetoSeries extends LineSeriesBase<ParetoSeriesOptions> {
12361
+ static readonly type = "pareto";
12362
+ static defaults: ParetoSeriesOptions;
12363
+ getLineType(): LineType;
12364
+ protected _createPoint(source: any): ParetoSeriesPoint;
12365
+ _referOtherSeries(series: Series): boolean;
12366
+ reference(other: Series, axis: IAxis): void;
12127
12367
  }
12128
12368
 
12129
12369
  /**
12130
- * Clock 게이지 테두리(rim) 설정 모델.<br/>
12131
- * {@page options} 모델은 {@page op.ClockGaugeRimOptions}이다.
12370
+ * [y]
12371
+ * [x, y]
12132
12372
  */
12133
- declare class ClockGaugeRim extends GaugeItem<ClockGaugeRimOptions> {
12134
- static defaults: ClockGaugeRimOptions;
12135
- private _thicknessDim;
12136
- getThickness(domain: number): number;
12137
- protected _doApply(options: ClockGaugeRimOptions): void;
12373
+ declare class PieSeriesPoint extends WidgetSeriesPoint {
12374
+ private _thickness;
12375
+ private _thickDim;
12376
+ sliced: boolean;
12377
+ startAngle: number;
12378
+ angle: number;
12379
+ borderRaidus: number;
12380
+ /**
12381
+ * 원호 두께.
12382
+ */
12383
+ get thickness(): PercentSize;
12384
+ set thickness(value: PercentSize);
12385
+ parse(series: ISeries): void;
12386
+ protected _assignTo(proxy: any): any;
12138
12387
  }
12139
- /**
12140
- * Clock 게이지 시/분침(hand) 설정 모델.<br/>
12141
- * {@page options} 모델은 {@page op.ClockGaugeHandOptions}이다.
12142
- */
12143
- declare class ClockGaugeHand<OP extends ClockGaugeHandOptions = ClockGaugeHandOptions> extends GaugeItem<OP> {
12144
- static defaults: ClockGaugeHandOptions;
12145
- private _lengthDim;
12146
- getLength(domain: number): number;
12147
- protected _doApply(options: ClockGaugeHandOptions): void;
12388
+ declare class PieSeriesText extends IconedText<PieSeriesTextOptions> {
12389
+ getDefaultIconPos(): IconPosition;
12148
12390
  }
12149
- /**
12150
- * Clock 게이지 분침 모델.<br/>
12151
- * {@page options} 모델은 {@page op.ClockGaugeHandOptions}이다.
12152
- */
12153
- declare class ClockGaugeMinuteHand extends ClockGaugeHand<ClockGaugeHandOptions> {
12154
- static defaults: ClockGaugeHandOptions;
12391
+ declare class PieSeriesLabel extends WidgetSeriesLabel<PieSeriesLabelOptions> {
12392
+ static readonly INSIDE_DIST: IPercentSize;
12393
+ static readonly INNER_DIST: IPercentSize;
12394
+ static readonly OUTSIDE_DIST = 25;
12395
+ static readonly ENDED_DIST = 10;
12396
+ static defaults: PieSeriesLabelOptions;
12397
+ getDistance(inner: boolean, rd: number, rdInner: number): number;
12155
12398
  }
12156
12399
  /**
12157
- * Clock 게이지 초침(hand) 설정 모델.<br/>
12158
- * {@page options} 모델은 {@page op.ClockGaugeSecondHandOptions}이다.
12400
+ * Pie 시리즈 모델.<br/>
12401
+ * {@page op.SeriesOptions#type} {@page config.series.pie 'pie'}이고,
12402
+ * {@page options 설정} 모델은 {@page op.PieSeriesOptions}이다.
12159
12403
  */
12160
- declare class ClockGaugeSecondHand extends ClockGaugeHand<ClockGaugeSecondHandOptions> {
12161
- static defaults: ClockGaugeSecondHandOptions;
12404
+ declare class PieSeries extends RadialSeries<PieSeriesOptions> {
12405
+ static readonly type = "pie";
12406
+ static defaults: PieSeriesOptions;
12407
+ private _innerRadius;
12408
+ private _sliceOffset;
12409
+ private _innerText;
12410
+ private _innerRadiusDim;
12411
+ private _sliceOffsetDim;
12412
+ _groupPos: number;
12413
+ _groupSize: number;
12414
+ _startRad: number;
12415
+ _totalRad: number;
12416
+ protected _doInitChildren(op: {
12417
+ [child: string]: ChartItemOptions;
12418
+ }): void;
12419
+ /**
12420
+ * {@page innerRadius}가 0보다 클 때, 도넛 내부에 표시되는 텍스트.
12421
+ * 기본 클래스 selector는 <b>'rct-pie-series-inner'</b>이다.
12422
+ */
12423
+ get innerText(): PieSeriesText;
12424
+ followPointer(): boolean;
12425
+ hasInner(): boolean;
12426
+ getInnerRadius(rd: number): number;
12427
+ getSliceOffset(rd: number): number;
12428
+ get pointLabel(): PieSeriesLabel;
12429
+ protected _createLabel(chart: IChart): PieSeriesLabel;
12430
+ protected _createPoint(source: any): PieSeriesPoint;
12431
+ protected _doApply(options: PieSeriesOptions): void;
12432
+ protected _doPrepareRender(): void;
12162
12433
  }
12163
12434
  /**
12164
- * Clock 게이지 tick 설정 모델.<br/>
12165
- * {@page options} 모델은 {@page op.ClockGaugeTickOptions}이다.
12435
+ * Pie 시리즈그룹 모델.<br/>
12436
+ * {@page op.SeriesOptions#type} {@page config.series.piegroup 'piegroup'}이고,
12437
+ * {@page options 옵션} 모델은 {@page op.PieSeriesGroupOptions}이다.
12166
12438
  */
12167
- declare class ClockGaugeTick extends GaugeItem<ClockGaugeTickOptions> {
12168
- length: number;
12169
- constructor(gauge: ClockGauge, length: number);
12439
+ declare class PieSeriesGroup extends SeriesGroup<PieSeries, PieSeriesGroupOptions> {
12440
+ static readonly type = "piegroup";
12441
+ static readonly seriesType = "pie";
12442
+ static defaults: PieSeriesGroupOptions;
12443
+ private _polarSize;
12444
+ private _innerSize;
12445
+ private _polarDim;
12446
+ private _innerDim;
12447
+ getPolarSize(width: number, height: number): number;
12448
+ getInnerRadius(rd: number): number;
12449
+ protected _doApply(options: PieSeriesGroupOptions): void;
12450
+ needAxes(): boolean;
12451
+ protected _canContain(ser: Series): boolean;
12452
+ protected _doPrepareSeries(series: PieSeries[]): void;
12170
12453
  }
12171
- /**
12172
- * Clock 게이지 tick 라벨 설정 모델.<br/>
12173
- * {@page options} 모델은 {@page op.ClockGaugeTickLabelOptions}이다.
12174
- */
12175
- declare class ClockGaugeTickLabel extends GaugeItem<ClockGaugeTickLabelOptions> {
12176
- static defaults: ClockGaugeTickLabelOptions;
12454
+
12455
+ declare class ScatterSeriesPoint extends DataPoint {
12177
12456
  }
12178
12457
  /**
12179
- * Clock 게이지 중심 pin 설정 모델.<br/>
12180
- * {@page options} 모델은 {@page op.ClockGaugePinOptions}이다.
12458
+ * Scatter 시리즈.<br/>
12459
+ * {@page op.SeriesOptions#type} {@page config.series.scatter 'scatter'}이고,
12460
+ * {@page options 설정} 모델은 {@page op.ScatterSeriesOptions}이다.
12181
12461
  */
12182
- declare class ClockGaugePin extends GaugeItem<ClockGaugePinOptions> {
12183
- raidus: number;
12184
- constructor(gauge: ClockGauge, raidus: number);
12462
+ declare class ScatterSeries extends MarkerSeries<ScatterSeriesOptions> {
12463
+ static readonly type = "scatter";
12464
+ static defaults: ScatterSeriesOptions;
12465
+ _defShape: Shape;
12466
+ protected _createPoint(source: any): DataPoint;
12467
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12468
+ _colorByPoint(): boolean;
12469
+ /**
12470
+ * rendering 시점에 chart가 series별로 기본 shape를 지정한다.
12471
+ */
12472
+ setShape(shape: Shape): void;
12473
+ get canPolar(): boolean;
12474
+ getShape(p: ScatterSeriesPoint): Shape;
12475
+ hasShape(): boolean;
12476
+ legendMarker(doc: Document, size: number): RcElement;
12185
12477
  }
12186
- /**
12187
- * Clock 게이지 내부에 표시되는 라벨 설정 모델.<br/>
12188
- * {@page options} 모델은 {@page op.ClockGaugeLabelOptions}이다.
12189
- */
12190
- declare class ClockGaugeLabel extends ChartText<ClockGaugeLabelOptions> {
12191
- static defaults: ClockGaugeLabelOptions;
12192
- constructor(gauge: ClockGauge);
12478
+
12479
+ declare class WaterfallSeriesPoint extends DataPoint {
12480
+ _isSum: boolean;
12481
+ _intermediate: boolean;
12482
+ save: number;
12483
+ low: number;
12484
+ parse(series: WaterfallSeries): void;
12193
12485
  }
12194
12486
  /**
12195
- * 시계 게이지 모델.<br/>
12196
- * {@page op.GaugeOptions#type}은 **'clock'** 이고,
12197
- * {@page options 설정} 모델은 {@page op.ClockGaugeOptions}이다.
12487
+ * 폭포(Waterfall) 시리즈 모델.<br/>
12488
+ * {@page op.SeriesOptions#type}은 {@page config.series.waterfall 'waterfall'}이고,
12489
+ * {@page options 설정} 모델은 {@page op.WaterfallSeriesOptions}이다.
12198
12490
  */
12199
- declare class ClockGauge extends Gauge<ClockGaugeOptions> {
12200
- static readonly type = "clock";
12201
- static defaults: ClockGaugeOptions;
12202
- private _centerX;
12203
- private _centerY;
12204
- private _radius;
12205
- private _centerXDim;
12206
- private _centerYDim;
12207
- private _radiusDim;
12208
- protected _doInitChildren(op: {
12209
- [child: string]: ChartItemOptions;
12210
- }): void;
12211
- /**
12212
- * rim 설정 모델.
12213
- *
12214
- * @config
12215
- */
12216
- rim: ClockGaugeRim;
12217
- /**
12218
- * 시침 설정 모델.
12219
- *
12220
- * @config
12221
- */
12222
- hourHand: ClockGaugeHand;
12223
- /**
12224
- * 분침 설정 모델.
12225
- *
12226
- * @config
12227
- */
12228
- minuteHand: ClockGaugeMinuteHand;
12229
- /**
12230
- * 초침 설정 모델.
12231
- *
12232
- * @config
12233
- */
12234
- secondHand: ClockGaugeSecondHand;
12235
- /**
12236
- * main tick.
12237
- *
12238
- * @config
12239
- */
12240
- tick: ClockGaugeTick;
12241
- /**
12242
- * minor tick
12243
- *
12244
- * @config
12245
- */
12246
- minorTick: ClockGaugeTick;
12247
- /**
12248
- * tick label
12249
- *
12250
- * @config
12251
- */
12252
- tickLabel: ClockGaugeTickLabel;
12253
- /**
12254
- * pin
12255
- *
12256
- * @config
12257
- */
12258
- pin: ClockGaugePin;
12259
- /**
12260
- * label
12261
- *
12262
- * @config
12263
- */
12264
- label: ClockGaugeLabel;
12265
- getTime(): Date;
12266
- getExtents(gaugeWidth: number, gaugeHeight: number): {
12267
- cx: number;
12268
- cy: number;
12269
- rd: number;
12270
- };
12271
- protected _doApply(options: ClockGaugeOptions): void;
12491
+ declare class WaterfallSeries extends RangedSeries<WaterfallSeriesOptions> {
12492
+ static readonly type = "waterfall";
12493
+ canCategorized(): boolean;
12494
+ protected _createPoint(source: any): DataPoint;
12495
+ protected _createLegendMarker(doc: Document, size: number): RcElement;
12496
+ protected _doPrepareRender(): void;
12497
+ protected _getBottomValue(p: WaterfallSeriesPoint): number;
12272
12498
  }
12273
12499
 
12274
12500
  /**
@@ -12317,6 +12543,275 @@ declare class ShapeAnnotation extends Annotation<ShapeAnnotationOptions> {
12317
12543
  protected _doSetSimple(src: any): boolean;
12318
12544
  }
12319
12545
 
12546
+ /** @internal */
12547
+ declare class Color {
12548
+ static isBright(color: string): boolean;
12549
+ static getContrast(color: string, darkColor?: string, brightColor?: string): string;
12550
+ private r;
12551
+ private g;
12552
+ private b;
12553
+ private a;
12554
+ constructor(color?: string);
12555
+ get rgba(): string;
12556
+ isBright(): boolean;
12557
+ getContrast(darkColor: string, brightColor: string): string;
12558
+ brighten(rate: number, color?: Color): Color;
12559
+ toString(): string;
12560
+ private $_parseRgb;
12561
+ private $_parseNumber;
12562
+ }
12563
+
12564
+ declare abstract class SeriesAnimation {
12565
+ static reveal(series: SeriesView<Series>, options?: IRevealAnimation): void;
12566
+ static grow(series: SeriesView<Series>, endHandler?: RcAnimationEndHandler): void;
12567
+ static spread(series: SeriesView<Series>, endHandler?: RcAnimationEndHandler): void;
12568
+ static fadeIn(series: SeriesView<Series>): void;
12569
+ constructor(sv: SeriesView<Series>, options?: any);
12570
+ protected abstract _createAnimation(series: SeriesView<Series>, options?: any): Animation | RcAnimation;
12571
+ }
12572
+ interface IRevealAnimation {
12573
+ from: 'left' | 'right' | 'top' | 'bottom';
12574
+ }
12575
+
12576
+ interface ILine {
12577
+ x1: number;
12578
+ y1: number;
12579
+ x2: number;
12580
+ y2: number;
12581
+ }
12582
+ declare class LineElement extends PathElement {
12583
+ constructor(doc: Document, styleName?: string, line?: ILine);
12584
+ setLine(x1: ILine | number, y1?: number, x2?: number, y2?: number): void;
12585
+ setVLine(x: number, y1: number, y2: number): void;
12586
+ setVLineC(x: number, y1: number, y2: number): void;
12587
+ setHLine(y: number, x1: number, x2: number): void;
12588
+ setHLineC(y: number, x1: number, x2: number): void;
12589
+ }
12590
+
12591
+ interface ISectorShape {
12592
+ cx: number;
12593
+ cy: number;
12594
+ rx: number;
12595
+ ry: number;
12596
+ innerRadius?: number;
12597
+ start: number;
12598
+ angle: number;
12599
+ borderRadius?: number;
12600
+ clockwise?: boolean;
12601
+ }
12602
+ declare class SectorElement extends PathElement {
12603
+ static create(doc: Document, styleName: string, x: number, y: number, rx: number, ry: number, start: number, angle: number, clockwise?: boolean): SectorElement;
12604
+ static createInner(doc: Document, styleName: string, x: number, y: number, rx: number, ry: number, innerRadius: number, start: number, angle: number, clockwise?: boolean): SectorElement;
12605
+ constructor(doc: Document, styleName?: string, shape?: ISectorShape);
12606
+ /**
12607
+ * 중심 x.
12608
+ */
12609
+ cx: number;
12610
+ /**
12611
+ * 중심 y.
12612
+ */
12613
+ cy: number;
12614
+ /**
12615
+ * 수평 반지름.
12616
+ */
12617
+ rx: number;
12618
+ /**
12619
+ * 수직 반지름.
12620
+ */
12621
+ ry: number;
12622
+ /**
12623
+ * 내부 반지름.
12624
+ * 수평/수직 반지름에 대한 비율. 0 ~ 1 사이 값으로 설정.
12625
+ */
12626
+ innerRadius: number;
12627
+ /**
12628
+ * 시작 각도.
12629
+ * 0 이상 2pi 미만.
12630
+ */
12631
+ start: number;
12632
+ /**
12633
+ * 각도.
12634
+ * 0 이상 2pi 미만.
12635
+ */
12636
+ angle: number;
12637
+ /**
12638
+ * 회전 방향.
12639
+ * true면 반시계 방향.
12640
+ */
12641
+ clockwise: boolean;
12642
+ /**
12643
+ * 반지름의 원래 크기에 대한 표시 비율.
12644
+ */
12645
+ rate: number;
12646
+ equals(shape: ISectorShape): boolean;
12647
+ setSector(shape: ISectorShape): void;
12648
+ setSectorEx(shape: ISectorShape, stroked: boolean): void;
12649
+ protected _getShape(): ISectorShape;
12650
+ protected _assignShape(shape: ISectorShape, stroked: boolean): void;
12651
+ private $_renderSector;
12652
+ private $_renderArc;
12653
+ }
12654
+
12655
+ declare class CircleElement extends RcElement {
12656
+ constructor(doc: Document, styleName?: string);
12657
+ setCircle(cx: number, cy: number, radius: number): void;
12658
+ }
12659
+ declare class ArcElement extends PathElement {
12660
+ setArc(cx: number, cy: number, rd: number, start: number, angle: number, clockwise: boolean): void;
12661
+ }
12662
+
12663
+ declare const isObject: (v: any) => boolean;
12664
+ declare const isArray: (arg: any) => arg is any[];
12665
+ declare const isString: (v: any) => v is string;
12666
+ declare const assignObj: {
12667
+ <T extends {}, U>(target: T, source: U): T & U;
12668
+ <T extends {}, U, V>(target: T, source1: U, source2: V): T & U & V;
12669
+ <T extends {}, U, V, W>(target: T, source1: U, source2: V, source3: W): T & U & V & W;
12670
+ (target: object, ...sources: any[]): any;
12671
+ };
12672
+ declare const cos: (x: number) => number;
12673
+ declare const sin: (x: number) => number;
12674
+ declare const minv: (...values: number[]) => number;
12675
+ declare const maxv: (...values: number[]) => number;
12676
+ declare const absv: (x: number) => number;
12677
+ declare const pickNum: (v1: any, v2: any) => number;
12678
+ declare const pickProp: (v1: any, v2: any) => any;
12679
+ declare const pickProp3: (v1: any, v2: any, v3: any) => any;
12680
+ declare const copyObj: (obj: any) => any;
12681
+ declare const incv: (prev: number, next: number, rate: number) => number;
12682
+
12683
+ declare abstract class GaugeView<T extends GaugeBase = GaugeBase> extends ContentView<T> {
12684
+ static readonly GAUGE_CLASS = "rct-gauge";
12685
+ static readonly PANE_CLASS = "rct-gauge-pane";
12686
+ static register(...clses: [typeof GaugeBase<GaugeBaseOptions>, typeof GaugeView<GaugeBase>][]): void;
12687
+ private _paneElement;
12688
+ private _contentContainer;
12689
+ constructor(doc: Document, styleName: string);
12690
+ protected _defaultCalss(): string;
12691
+ protected abstract _doInitContents(doc: Document, container: LayerElement): void;
12692
+ clicked(elt: Element): void;
12693
+ prepareGauge(doc: Document, model: T): void;
12694
+ getPosition(width: number, height: number): Point;
12695
+ protected _prepareStyleOrClass(model: T): void;
12696
+ protected _doMeasure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): Size;
12697
+ protected _doLayout(): void;
12698
+ protected abstract _prepareGauge(doc: Document, model: T): void;
12699
+ protected abstract _renderGauge(width: number, height: number): void;
12700
+ _getGroupView(): GaugeGroupView;
12701
+ }
12702
+ declare abstract class ValueGaugeView<T extends ValueGauge> extends GaugeView<T> {
12703
+ valueOf: (target: any, param: string, format: string) => any;
12704
+ private _prevValue;
12705
+ _runValue: number;
12706
+ private _ani;
12707
+ protected _prepareStyleOrClass(model: T): void;
12708
+ protected _doLayout(): void;
12709
+ protected abstract _backgroundView(): RcElement;
12710
+ abstract _renderValue(): void;
12711
+ protected _getValue(m: ValueGauge): number;
12712
+ protected _checkValueAnimation(): void;
12713
+ }
12714
+ declare class ScaleLabelView extends ChartTextElement {
12715
+ }
12716
+ declare abstract class ScaleView<T extends GaugeScale> extends ChartElement<T> {
12717
+ protected _line: RcElement;
12718
+ protected _tickContainer: LayerElement;
12719
+ protected _ticks: ElementPool<LineElement>;
12720
+ protected _labelContainer: LayerElement;
12721
+ protected _labels: ElementPool<ScaleLabelView>;
12722
+ constructor(doc: Document);
12723
+ protected abstract _createLine(doc: Document, styleName: string): RcElement;
12724
+ }
12725
+ declare abstract class GaugeGroupView<T extends GaugeGroup = GaugeGroup, GV extends GaugeView = GaugeView> extends GaugeView<T> {
12726
+ static readonly GAUGE_GROUP_CLASS = "rct-gauge-group";
12727
+ private _gaugeContainer;
12728
+ protected _gaugeViews: ElementPool<GV>;
12729
+ protected _defaultCalss(): string;
12730
+ protected _doInitContents(doc: Document, container: LayerElement): void;
12731
+ _setChartOptions(inverted: boolean, animatable: boolean, loadAnimatable: boolean): void;
12732
+ protected _prepareGauge(doc: Document, model: T): void;
12733
+ protected _renderGauge(width: number, height: number): void;
12734
+ protected abstract _createPool(container: LayerElement): ElementPool<GV>;
12735
+ protected abstract _doRenderGauges(container: RcElement, views: ElementPool<GV>, width: number, height: number): void;
12736
+ protected _doPrepareGauges(doc: Document, model: T, views: ElementPool<GV>): void;
12737
+ }
12738
+
12739
+ /**
12740
+ * @internal
12741
+ *
12742
+ */
12743
+ declare class Utils {
12744
+ static LOGGING: boolean;
12745
+ static log(...msg: any[]): void;
12746
+ static week_days: string[];
12747
+ static long_week_days: string[];
12748
+ static month_days: number[][];
12749
+ static now(): number;
12750
+ static parseDate(date: string, defaultDate?: Date): Date;
12751
+ static isLeapYear(year: number): boolean;
12752
+ static dateOfYear(d: Date): number;
12753
+ static incMonth(d: Date, delta: number): Date;
12754
+ static minDate(d1: Date, d2: Date): Date;
12755
+ static maxDate(d1: Date, d2: Date): Date;
12756
+ static weekOfMonth(d: Date, startOfWeek: number, exact: boolean): number;
12757
+ static weekOfYear(d: Date, startOfWeek: number): number;
12758
+ static isObject(v: any): boolean;
12759
+ static isValidObject(v: any): boolean;
12760
+ static copyObject(v: any): any;
12761
+ static checkArray(v: any): any;
12762
+ static makeArray(v: any, force?: boolean): any[];
12763
+ static makeNumArray(v: any): number[];
12764
+ static getIntArray(count: number, start?: number): number[];
12765
+ static isValueArray(arr: any[]): boolean;
12766
+ static toArray(v: any): any[];
12767
+ static copyArray(v: any): any[];
12768
+ static push(arr: Array<any>, items: Array<any>): void;
12769
+ static isDefined(v: any): boolean;
12770
+ static isNotDefined(v: any): boolean;
12771
+ static isNumber(value: any): value is number;
12772
+ static canNumber(value: any): value is number;
12773
+ static isValidNum(value: any): value is number;
12774
+ static getNumber(v: any, def?: number): number;
12775
+ static toNumber(value: any, def?: number): number;
12776
+ static compareText(s1: string, s2: string, ignoreCase?: boolean): number;
12777
+ static getTimeF(): number;
12778
+ static getTimer(): number;
12779
+ static isWhiteSpace(s: string): boolean;
12780
+ static pad(value: number, len?: number, c?: string): string;
12781
+ static pad16(value: number, len?: number, c?: string): string;
12782
+ static pick(...args: any): any;
12783
+ static toStr(value: any): string;
12784
+ static equalNumbers(a: number, b: number): boolean;
12785
+ static equalArrays(a: any[], b: any[]): boolean;
12786
+ static isEmpty(obj: {}): boolean;
12787
+ static isNotEmpty(obj: {}): boolean;
12788
+ static setter(prop: string): string;
12789
+ static deepClone(obj: object): object;
12790
+ static getArray(length: number, value?: any): any[];
12791
+ static getNumArray(length: number, value?: number): number[];
12792
+ static dedupe(list: any[], comparer?: (v1: any, v2: any) => number): any[];
12793
+ static sortNum(list: number[]): number[];
12794
+ static logElapsed(message: string, runner: () => void): void;
12795
+ static clamp(v: number, min: number, max: number): number;
12796
+ static makeIntArray(from: number, to: number): number[];
12797
+ static shuffle(arr: any[]): void;
12798
+ static isDate(v: any): boolean;
12799
+ static isValidDate(d: Date): boolean;
12800
+ static asFunction(fn: any): any;
12801
+ static getFieldProp(field: string): {
12802
+ field: string;
12803
+ props: string[];
12804
+ };
12805
+ static uniqueKey: () => string;
12806
+ static startsWith(str: string, search: string): boolean;
12807
+ static endsWith(str: string, search: string): boolean;
12808
+ static scaleNumber(value: number, symbols: string[], force: boolean): {
12809
+ value: number;
12810
+ symbol: string;
12811
+ };
12812
+ static jitter(v: number, amount: number): number;
12813
+ }
12814
+
12320
12815
  declare const getVersion: typeof Globals.getVersion;
12321
12816
  declare const setDebugging: typeof Globals.setDebugging;
12322
12817
  declare const setLogging: typeof Globals.setLogging;
@@ -12325,4 +12820,4 @@ declare const configure: typeof Globals.configure;
12325
12820
  declare const createChart: typeof Globals.createChart;
12326
12821
  declare const createData: typeof Globals.createData;
12327
12822
 
12328
- export { Annotation, AnnotationAnimationOptions, AnnotationOptions, AnnotationOptionsType, AreaRangeSeries, AreaRangeSeriesOptions, AreaSeries, AreaSeriesGroup, AreaSeriesGroupOptions, AreaSeriesOptions, AssetItemOptions, AssetOptionsType, Axis, AxisBaseLine, AxisBaseLineOptions, AxisBreakOptions, AxisGrid, AxisGridOptions, AxisGridRowsOptions, AxisGuideLabelOptions, AxisGuideOptions, AxisItem, AxisItemOptions, AxisLabel, AxisLabelArgs, AxisLabelOptions, AxisLine, AxisLineGuideOptions, AxisLineOptions, AxisOptions, AxisOptionsType, AxisRangeGuideOptions, AxisScrollBar, AxisScrollBarOptions, AxisSectorLine, AxisSectorLineOptions, AxisTick, AxisTickOptions, AxisTitle, AxisTitleOptions, BackgroundImageOptions, BarRangeSeries, BarRangeSeriesOptions, BarSeries, BarSeriesBase, BarSeriesBaseOptions, BarSeriesGroup, BarSeriesGroupBase, BarSeriesGroupBaseOptions, BarSeriesGroupOptions, BarSeriesOptions, BasedSeries, BasedSeriesOptions, BellCurveSeries, BellCurveSeriesOptions, Body, BodyOptions, BoxPlotSeries, BoxPlotSeriesOptions, BubbleSeries, BubbleSeriesOptions, BulletGauge, BulletGaugeBand, BulletGaugeBandOptions, BulletGaugeGroup, BulletGaugeGroupOptions, BulletGaugeOptions, BulletTargetBar, BulletTargetBarOptions, BulletValueBar, BulletValueBarOptions, BumpSeriesGroup, BumpSeriesGroupOptions, CandlestickSeries, CandlestickSeriesOptions, CategoryAxis, CategoryAxisGrid, CategoryAxisLabel, CategoryAxisOptions, CategoryAxisTick, CategoryAxisTickOptions, Chart, ChartConfiguration, ChartData, ChartDataCollection, ChartDataOptions, ChartItem, ChartItemOptions, ChartOptions, ChartOptionsOptions, ChartText, CircelBarPointLabel, CircleBarPointLabelOptions, CircleBarSeries, CircleBarSeriesGroup, CircleBarSeriesGroupOptions, CircleBarSeriesOptions, CircleGauge, CircleGaugeGroup, CircleGaugeGroupOptions, CircleGaugeHand, CircleGaugeHandOptions, CircleGaugeOptions, CircleGaugePin, CircleGaugePinOptions, CircleGaugeRim, CircleGaugeRimBase, CircleGaugeRimBaseOptions, CircleGaugeRimOptions, CircleGaugeScale, CircleGaugeScaleOptions, CircleGaugeValueMarkerOptions, CircleGaugeValueRim, CircleGaugeValueRimOptions, CircularGauge, CircularGaugeGroup, CircularGaugeGroupOptions, CircularGaugeLabel, CircularGaugeLabelOptions, CircularGaugeOptions, ClockGauge, ClockGaugeHand, ClockGaugeHandOptions, ClockGaugeLabel, ClockGaugeLabelOptions, ClockGaugeMinuteHand, ClockGaugeOptions, ClockGaugePin, ClockGaugePinOptions, ClockGaugeRim, ClockGaugeRimOptions, ClockGaugeSecondHand, ClockGaugeSecondHandOptions, ClockGaugeTick, ClockGaugeTickLabel, ClockGaugeTickLabelOptions, ClockGaugeTickOptions, ClusterableSeries, ClusterableSeriesGroup, ClusterableSeriesGroupOptions, ClusterableSeriesOptions, ColorListOptions, ConstraintSeriesGroup, ContinuousAxis, ContinuousAxisGridOptions, ContinuousAxisLabelOptions, ContinuousAxisOptions, ContinuousAxisTickOptions, Credits, CreditsOptions, Crosshair, CrosshairCallbackArgs, CrosshairFlagOptions, CrosshairOptions, DataPoint, DataPointCallbackArgs, DataPointCollection, DataPointLabel, DataPointLabelOptions, DumbbellSeries, DumbbellSeriesMarkerOptions, DumbbellSeriesOptions, EmptyViewOptions, EqualizerSeries, EqualizerSeriesOptions, ErrorBarSeries, ErrorBarSeriesOptions, ExportOptions, Exporter, FunnelSeries, FunnelSeriesLabelOptions, FunnelSeriesOptions, Gauge, GaugeBase, GaugeBaseOptions, GaugeGroup, GaugeGroupOptions, GaugeItem, GaugeLabel, GaugeLabelOptions, GaugeOptions, GaugeOptionsType, GaugeRangeBand, GaugeRangeBandOptions, GaugeRangeLabel, GaugeRangeLabelOptions, GaugeScale, GaugeScaleLabelOptions, GaugeScaleOptions, GaugeScaleTickOptions, GradientOptions, GuageScaleTickOptions, HeatmapSeries, HeatmapSeriesOptions, HistogramSeries, HistogramSeriesOptions, IAxis, Point as IPoint, IconedText, ImageAnnotation, ImageAnnotationOptions, ImageListOptions, ImageOptions, Legend, LegendOptions, LinePointLabel, LinePointLabelOptions, LineSeries, LineSeriesBase, LineSeriesBaseOptions, LineSeriesFlagOptions, LineSeriesGroup, LineSeriesGroupOptions, LineSeriesMarkerOptions, LineSeriesOptions, LineSeriesPoint, LinearAxis, LinearAxisLabelOptions, LinearAxisOptions, LinearGauge, LinearGaugeBase, LinearGaugeBaseOptions, LinearGaugeChildLabel, LinearGaugeChildLabelOptions, LinearGaugeGroup, LinearGaugeGroupBase, LinearGaugeGroupBaseOptions, LinearGaugeGroupLabel, LinearGaugeGroupLabelOptions, LinearGaugeGroupOptions, LinearGaugeLabel, LinearGaugeLabelOptions, LinearGaugeOptions, LinearGaugeScale, LinearGaugeScaleOptions, LinearGradientOptions, LinearValueBar, LinearValueBarOptions, LogAxis, LogAxisOptions, LogAxisTickOptions, LollipopSeries, LollipopSeriesMarkerOptions, LollipopSeriesOptions, LowRangedSeries, LowRangedSeriesOptions, MarkerSeries, MarkerSeriesOptions, NavigatorMask, NavigiatorHandle, NavigiatorHandleOptions, NavigiatorMaskOptions, OhlcSeries, OhlcSeriesOptions, PaneBodyOptions, PaneOptions, ParetoSeries, ParetoSeriesOptions, PatternOptions, PieSeries, PieSeriesGroup, PieSeriesGroupOptions, PieSeriesLabel, PieSeriesLabelOptions, PieSeriesOptions, PieSeriesText, PieSeriesTextOptions, PointHovering, PointHoveringOptions, RadialGradientOptions, RadialSeries, RadialSeriesOptions, RangedSeries, RangedSeriesOptions, RcObject, SVGStyles, ScatterSeries, ScatterSeriesOptions, Series, SeriesGroup, SeriesGroupOptions, SeriesMarker, SeriesMarkerOptions, SeriesNavigator, SeriesNavigatorOptions, SeriesOptions, SeriesOptionsType, Shape, ShapeAnnotation, ShapeAnnotationOptions, SplineSeries, SplineSeriesOptions, Split, SplitOptions, StepCallbackArgs, Subtitle, SubtitleOptions, TextAnnotation, TextAnnotationOptions, TimeAxis, TimeAxisLabelOptions, TimeAxisOptions, TimeAxisTickOptions, Title, TitleOptions, Tooltip, TooltipOptions, TreeGroupHeadOptions, TreemapSeries, TreemapSeriesOptions, Trendline, TrendlineOptions, ValueGauge, ValueGaugeOptions, ValueRange, ValueRangeList, VectorSeries, VectorSeriesOptions, WaterfallSeries, WaterfallSeriesOptions, Widget, WidgetSeries, WidgetSeriesOptions, ZoomButtonOptions, configure, createChart, createData, getVersion, setAnimatable, setDebugging, setLogging };
12823
+ export { Align, Annotation, AnnotationAnimationOptions, AnnotationOptions, AnnotationOptionsType, ArcElement, AreaRangeSeries, AreaRangeSeriesOptions, AreaSeries, AreaSeriesGroup, AreaSeriesGroupOptions, AreaSeriesOptions, ArrowHead, AssetCollection, AssetItemOptions, AssetOptionsType, Axis, AxisBaseLine, AxisBaseLineOptions, AxisBreakOptions, AxisCollection, AxisGrid, AxisGridOptions, AxisGridRowsOptions, AxisGuideLabelOptions, AxisGuideOptions, AxisItem, AxisItemOptions, AxisLabel, AxisLabelArgs, AxisLabelOptions, AxisLine, AxisLineGuideOptions, AxisLineOptions, AxisOptions, AxisOptionsType, AxisRangeGuideOptions, AxisScrollBar, AxisScrollBarOptions, AxisScrollView, AxisSectorLine, AxisSectorLineOptions, AxisTick, AxisTickOptions, AxisTitle, AxisTitleOptions, AxisView, BackgroundImageOptions, BarRangeSeries, BarRangeSeriesOptions, BarSeries, BarSeriesBase, BarSeriesBaseOptions, BarSeriesGroup, BarSeriesGroupBase, BarSeriesGroupBaseOptions, BarSeriesGroupOptions, BarSeriesOptions, BasedSeries, BasedSeriesOptions, BellCurveSeries, BellCurveSeriesOptions, Body, BodyOptions, BodyView, BoxPlotSeries, BoxPlotSeriesOptions, BubbleSeries, BubbleSeriesOptions, BulletGaugeBandOptions, BulletGaugeGroupOptions, BulletGaugeGroupType, BulletGaugeOptions, BulletGaugeType, BulletTargetBarOptions, BulletValueBarOptions, BumpSeriesGroup, BumpSeriesGroupOptions, CandlestickSeries, CandlestickSeriesOptions, CategoryAxis, CategoryAxisGrid, CategoryAxisLabel, CategoryAxisOptions, CategoryAxisTick, CategoryAxisTickOptions, Chart, ChartConfiguration, ChartControl, ChartData, ChartDataCollection, ChartDataOptions, ChartElement, ChartItem, ChartItemOptions, ChartObject, ChartOptions, ChartOptionsOptions, ChartText, ChartTextOptions, ChartView, CircelBarPointLabel, CircleBarPointLabelOptions, CircleBarSeries, CircleBarSeriesGroup, CircleBarSeriesGroupOptions, CircleBarSeriesOptions, CircleElement, CircleGaugeGroupOptions, CircleGaugeGroupType, CircleGaugeHandOptions, CircleGaugeOptions, CircleGaugePinOptions, CircleGaugeRimBaseOptions, CircleGaugeRimOptions, CircleGaugeScaleOptions, CircleGaugeType, CircleGaugeValueMarkerOptions, CircleGaugeValueRimOptions, CircularGauge, CircularGaugeGroup, CircularGaugeGroupOptions, CircularGaugeLabel, CircularGaugeLabelOptions, CircularGaugeOptions, ClockGaugeHandOptions, ClockGaugeLabelOptions, ClockGaugeOptions, ClockGaugePinOptions, ClockGaugeRimOptions, ClockGaugeSecondHandOptions, ClockGaugeTickLabelOptions, ClockGaugeTickOptions, ClockGaugeType, ClusterableSeries, ClusterableSeriesGroup, ClusterableSeriesGroupOptions, ClusterableSeriesOptions, Color, ColorListOptions, ConnectableSeries, ConnectableSeriesOptions, ConstraintSeriesGroup, ContentView, ContinuousAxis, ContinuousAxisGridOptions, ContinuousAxisLabelOptions, ContinuousAxisOptions, ContinuousAxisTickOptions, Credits, CreditsOptions, Crosshair, CrosshairCallbackArgs, CrosshairFlagOptions, CrosshairOptions, DataPoint, DataPointCallbackArgs, DataPointCollection, DataPointLabel, DataPointLabelOptions, DumbbellSeries, DumbbellSeriesMarkerOptions, DumbbellSeriesOptions, ElementPool, EmptyViewOptions, EqualizerSeries, EqualizerSeriesOptions, ErrorBarSeries, ErrorBarSeriesOptions, ExportOptions, Exporter, ExporterOptions, FunnelSeries, FunnelSeriesLabelOptions, FunnelSeriesOptions, Gauge, GaugeBase, GaugeBaseOptions, GaugeGroup, GaugeGroupOptions, GaugeGroupView, GaugeItem, GaugeLabel, GaugeLabelOptions, GaugeOptions, GaugeOptionsType, GaugeRangeBand, GaugeRangeBandOptions, GaugeRangeLabel, GaugeRangeLabelOptions, GaugeScale, GaugeScaleLabelOptions, GaugeScaleOptions, GaugeScaleTickOptions, GaugeView, GradientOptions, GuageScaleTickOptions, HeatmapSeriesOptions, HeatmapSeriesType, HistogramSeries, HistogramSeriesOptions, IAxis, IChart, ICircularGaugeExtents, IMinMax, IPercentSize, IPlottingItem, IPlottingOwner, IPointView, IRect, ISeries, ISplit, IconedText, IconedTextOptions, ImageAnnotation, ImageAnnotationOptions, ImageListOptions, ImageOptions, LayerElement, Legend, LegendOptions, LineElement, LinePointLabel, LinePointLabelOptions, LineSeries, LineSeriesBase, LineSeriesBaseOptions, LineSeriesFlagOptions, LineSeriesGroup, LineSeriesGroupOptions, LineSeriesMarkerOptions, LineSeriesOptions, LineSeriesPoint, LinearAxis, LinearAxisLabelOptions, LinearAxisOptions, LinearGaugeBaseOptions, LinearGaugeChildLabelOptions, LinearGaugeGroupBaseOptions, LinearGaugeGroupLabelOptions, LinearGaugeGroupOptions, LinearGaugeGroupType, LinearGaugeLabelOptions, LinearGaugeOptions, LinearGaugeScaleOptions, LinearGaugeType, LinearGradientOptions, LinearValueBarOptions, LogAxis, LogAxisOptions, LogAxisTickOptions, LollipopSeries, LollipopSeriesMarkerOptions, LollipopSeriesOptions, LowRangedSeries, LowRangedSeriesOptions, MarkerSeries, MarkerSeriesOptions, MarkerSeriesPointView, MarkerSeriesView, NavigatorMask, NavigiatorHandle, NavigiatorHandleOptions, NavigiatorMaskOptions, ORG_ANGLE, OhlcSeries, OhlcSeriesOptions, PI_2, PaneBodyOptions, PaneContainer, PaneOptions, ParetoSeries, ParetoSeriesOptions, PathBuilder, PathElement, PatternOptions, PercentSize, PieSeries, PieSeriesGroup, PieSeriesGroupOptions, PieSeriesLabel, PieSeriesLabelOptions, PieSeriesOptions, PieSeriesText, PieSeriesTextOptions, Point, PointElement, PointHovering, PointHoveringOptions, PointLabelView, RAD_DEG, RadialGradientOptions, RadialSeries, RadialSeriesOptions, RangedSeries, RangedSeriesOptions, RcAnimation, RcControl, RcElement, RcObject, RectElement, SVGStyleOrClass, SVGStyles, ScaleView, ScatterSeries, ScatterSeriesOptions, SectionView, SectorElement, Series, SeriesAnimation, SeriesGroup, SeriesGroupOptions, SeriesMarker, SeriesMarkerOptions, SeriesNavigator, SeriesNavigatorOptions, SeriesOptions, SeriesOptionsType, SeriesView, Shape, ShapeAnnotation, ShapeAnnotationOptions, Size, SplineSeries, SplineSeriesOptions, SplitOptions, StepCallbackArgs, Subtitle, SubtitleOptions, TextAnchor, TextAnnotation, TextAnnotationOptions, TextElement, TextLayout, TimeAxis, TimeAxisLabelOptions, TimeAxisOptions, TimeAxisTickOptions, Title, TitleOptions, Tooltip, TooltipOptions, TreeGroupHeadOptions, TreemapSeriesOptions, TreemapSeriesType, Trendline, TrendlineOptions, Utils, ValueGauge, ValueGaugeOptions, ValueGaugeView, ValueRange, ValueRangeList, VectorSeriesOptions, VectorSeriesType, WaterfallSeries, WaterfallSeriesOptions, Widget, WidgetSeries, WidgetSeriesOptions, WidgetSeriesView, ZValuePoint, ZoomButtonOptions, absv, assignObj, buildValueRanges, calcPercent, configure, copyObj, cos, createChart, createData, createRect, extend, fixnum, getVersion, incv, isArray, isEmptyRect, isObject, isString, maxv, minv, parsePercentSize, pickNum, pickProp, pickProp3, pixel, rectToSize, setAnimatable, setDebugging, setLogging, sin, toStr };