realchart 1.3.18 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -778,6 +778,14 @@ interface AnnotationOptions extends ChartItemOptions {
778
778
  * @default false
779
779
  */
780
780
  name?: string;
781
+ /**
782
+ * 분할 모드일 때 이 속성과 {@page col}이 모두 지정되면 annotation이 표시될 pane의 수직 index.<br/>
783
+ */
784
+ row?: number;
785
+ /**
786
+ * 분할 모드일 때 이 속성과 {@page row}가 모두 지정되면 annotation이 표시될 pane의 수직 index.<br/>
787
+ */
788
+ col?: number;
781
789
  /**
782
790
  * 어노테이션 배치 기준이 되는 차트 구성 요소.<br/>
783
791
  * 현재, 같은 영역(body 혹은 chart)에 포함된 다른 어노테이션이나 {@page config.base.gauge 게이지} {@page name 이름}을 지정할 수 있다.
@@ -833,6 +841,20 @@ interface AnnotationOptions extends ChartItemOptions {
833
841
  * true로 지정하면 상위 영역을 벗어난 부분도 표시되게 한다.<br/>
834
842
  */
835
843
  noClip?: boolean;
844
+ /**
845
+ * body 어노테이션일 때, {@page x1}, {@page x2}의 기준이 되는 축의 index나 이름.<br/>
846
+ * 지정하지 않으면 body에 연결된 첫번째 x축, 또는 body에 표시되는 첫번째 시리즈의 x축이 기준이 된다.
847
+ *
848
+ * @default undefined
849
+ */
850
+ xAxis?: number | string;
851
+ /**
852
+ * body 어노테이션일 때, {@page y1}, {@page y2}의 기준이 되는 축의 index나 이름.<br/>
853
+ * 지정하지 않으면 body에 연결된 첫번째 y축, 또는 body에 표시되는 첫번째 시리즈의 y축이 기준이 된다.
854
+ *
855
+ * @default undefined
856
+ */
857
+ yAxis?: number | string;
836
858
  /**
837
859
  * body 어노테이션일 경우,
838
860
  * x 축을 기준으로 지정하는 수평(inverted일 때 수직) 위치.<br/>
@@ -1280,6 +1302,7 @@ declare abstract class RcControl extends RcObject implements IAssetOwner {
1280
1302
  private _domResize;
1281
1303
  loaded: boolean;
1282
1304
  _padding: ISides;
1305
+ private _bounds;
1283
1306
  constructor(doc: Document, container: string | HTMLDivElement, className?: string);
1284
1307
  protected _doDestroy(): void;
1285
1308
  isInited(): boolean;
@@ -1606,9 +1629,15 @@ type Shape = typeof _Shapes[keyof typeof _Shapes];
1606
1629
  */
1607
1630
  declare const _PointLabelPosition: {
1608
1631
  /**
1632
+ * @deprecated 대신 'default' 사용.
1633
+ *
1609
1634
  * 시리즈 종류에 따라 데이터포인트 라벨들의 표시 위치가 자동 결정된다.<br/>
1610
1635
  */
1611
1636
  readonly AUTO: "auto";
1637
+ /**
1638
+ * 시리즈 종류에 따라 데이터포인트 라벨들의 표시 위치가 자동 결정된다.<br/>
1639
+ */
1640
+ readonly DEFAULT: "default";
1612
1641
  /**
1613
1642
  * 포인트뷰 상단에 표시.<br/>
1614
1643
  */
@@ -1660,9 +1689,9 @@ interface DataPointLabelOptions extends IconedTextOptions {
1660
1689
  visible?: boolean;
1661
1690
  /**
1662
1691
  * 포인트 label 표시 위치.<br/>
1663
- * 'auto'이면 시리즈 종류에 따라 위치가 결정된다.
1692
+ * 'default'이면 시리즈 종류에 따라 위치가 결정된다.
1664
1693
  *
1665
- * @default 'auto'
1694
+ * @default 'default'
1666
1695
  */
1667
1696
  position?: PointLabelPosition;
1668
1697
  /**
@@ -1670,7 +1699,7 @@ interface DataPointLabelOptions extends IconedTextOptions {
1670
1699
  * 숫자 대신 콜백을 설정해서 데이터포인트별 값을 지정할 수 있다.
1671
1700
  * 콜백에서 타당한 값을 리턴하지 않으면 기본값이 사용된다.
1672
1701
  *
1673
- * @default 5
1702
+ * @default 4 pixel
1674
1703
  */
1675
1704
  offset?: number | ((args: DataPointCallbackArgs) => number);
1676
1705
  /**
@@ -1682,6 +1711,34 @@ interface DataPointLabelOptions extends IconedTextOptions {
1682
1711
  * polar이거나 원형 시리즈일 때 true로 지정할 경우 각도에 따라 자동으로 회전 시킨다.
1683
1712
  */
1684
1713
  autoRotation?: boolean;
1714
+ /**
1715
+ * body 영역을 넘어갈 경우 대처 방식.<br/>
1716
+ *
1717
+ * @default 0
1718
+ */
1719
+ overflowFit?: 'none' | 'hidden' | number;
1720
+ /**
1721
+ * body 영역을 넘어가게(overflow) 돼서 데이터포인트 본체와 겹치게 됐을 때, 'outline' 효과를 표시할 지 여부.<br/>
1722
+ * 동시에 대조 색상으로 표시할 지 여부는 {@page overlapContrast} 속성으로 지정한다.
1723
+ *
1724
+ * @default true
1725
+ */
1726
+ overlapOutline?: boolean;
1727
+ /**
1728
+ * body 영역을 넘어가게(overflow) 돼서 데이터포인트 본체와 겹치게 됐을 때, 대비 색상으로 표시할 지 여부.<br/>
1729
+ * 동시에 outline 효과를 표시할 지 여부는 {@page overlapOutline} 속성으로 지정한다.
1730
+ *
1731
+ * @default false
1732
+ */
1733
+ overlapContrast?: boolean;
1734
+ /**
1735
+ * 수평 상태의 데이터포인트 라벨일 때 텍스트 수직 위치 보정 값.<br/>
1736
+ * 텍스트 높이에 대한 상대 비율로 설정한 만큼 내려서 표시한다.
1737
+ * (∵ 숫자로 구성된 텍스트가 위로 치우쳐 표시되는 경향이 있다)
1738
+ *
1739
+ * @default 0.05
1740
+ */
1741
+ verticalAdjust?: number;
1685
1742
  /**
1686
1743
  * 계산되는 기본 text 대신, data point label로 표시될 text 리턴.<br/>
1687
1744
  * undefined나 null을 리턴하면 {@page textField} 등을 사용한 기존에 표시될 텍스트를 사용한다.
@@ -1808,14 +1865,6 @@ interface SeriesOptions extends ChartItemOptions {
1808
1865
  * 단순히 boolean 값으로 설정하면 {@page visible} 속성에 적용된다.
1809
1866
  */
1810
1867
  pointLabel?: DataPointLabelOptions | boolean;
1811
- /**
1812
- * 분할 모드일 때 시리즈가 표시될 pane의 수직 index.
1813
- */
1814
- row?: number;
1815
- /**
1816
- * 분할 모드일 때 시리즈가 표시될 pane의 수평 index.
1817
- */
1818
- col?: number;
1819
1868
  /**
1820
1869
  * 포인터가 차지하는 너비가 이 값 미만이면 표시하지 않는다.
1821
1870
  * // TODO: 구현할 것!
@@ -1955,6 +2004,13 @@ interface SeriesOptions extends ChartItemOptions {
1955
2004
  * @default true
1956
2005
  */
1957
2006
  interactive?: boolean;
2007
+ /**
2008
+ * 연결된 축의 padding을 확장시키는 비율.<br/>
2009
+ * 설정한 비율 만큼 축의 padding 크기가 확대되어 배치 계산이 이루어진다.
2010
+ *
2011
+ * @default 1
2012
+ */
2013
+ paddingRate?: number;
1958
2014
  /**
1959
2015
  * 데이터포인트들이 새로 로드된 후 호출된다.<br/>
1960
2016
  */
@@ -2019,27 +2075,30 @@ interface ClusterableSeriesOptions extends ConnectableSeriesOptions {
2019
2075
  clusterable?: boolean;
2020
2076
  }
2021
2077
  /**
2022
- * 'bar' 같이 y축 기준 위/아래 구분이 필요한 시리즈.\
2023
- * 구분하는 값은 {@page baseValue}로 지정한다.
2078
+ * {@page config.series.bar 'bar'} 시리즈와 같이 기준값이 있어야 표시 가능한 시리즈.<br/>
2079
+ * 기준값이 존재하면 그 값 보다 작은 데이터포인트들을 반대 방향과 {@page belowStyle 다른 스타일}로 표시할 수 있게 된다.
2080
+ * 구분하는 위치의 값은 {@page baseValue}로 지정한다.
2024
2081
  */
2025
2082
  interface BasedSeriesOptions extends ClusterableSeriesOptions {
2026
2083
  /**
2027
- * 상/하 구분의 기준이 되는 값.\
2028
- * 숫자가 아닌 값으로 지정하면 0으로 간주한다.
2084
+ * 데이터포인트를 표시하기 위한 y축 기준 위치 값.<br/>
2085
+ * 그룹에 포함된 경우 먼저 그룹의 baseValue를 따른다.
2086
+ * 또, 이 값을 지정하지 않은 경우 연결된 y축의 {@config config.axis.baseValue}를 따르고,
2087
+ * 그 값도 설정되지 않은 경우 0이 적용된다.
2088
+ * NaN으로 지정하면 기준값 없이 최소값과 축의 padding으로 기준 위치가 정해진다.
2029
2089
  *
2030
- * // 0을 설정하지 않으면 belowStyle이 작동하지 않는다.
2031
- * // http://localhost:6010/realchart/demo/bar-negative.html
2032
- * @default 0
2090
+ * @default undefined
2033
2091
  */
2034
2092
  baseValue?: number;
2035
2093
  /**
2036
- * null인 y값을 {@page baseValue}로 간주한다.
2094
+ * null인 y값을 {@page baseValue}로 간주한다.<br/>
2037
2095
  *
2096
+ * @default fasle
2038
2097
  */
2039
2098
  nullAsBase?: boolean;
2040
2099
  /**
2041
- * {@page baseValue} 혹은 y축의 baseValue보다 작은 쪽의 point들에 적용되는 스타일.
2042
- *
2100
+ * {@page baseValue} 또는 y축의 {@page config.yAxis#baseValue}로 지정되는
2101
+ * 기준값 보다 작은 쪽의 point들에 적용되는 스타일.<br/>
2043
2102
  */
2044
2103
  belowStyle?: SVGStyleOrClass;
2045
2104
  }
@@ -2099,12 +2158,6 @@ type SeriesGroupLayout = typeof _SeriesGroupLayout[keyof typeof _SeriesGroupLayo
2099
2158
  * @config chart.seriesGroup[base]
2100
2159
  */
2101
2160
  interface SeriesGroupOptions<T extends SeriesOptions = SeriesOptions> extends ChartItemOptions {
2102
- /**
2103
- */
2104
- row?: number;
2105
- /**
2106
- */
2107
- col?: number;
2108
2161
  /**
2109
2162
  * 단일 시리즈 옵션 배열.
2110
2163
  */
@@ -2187,6 +2240,13 @@ interface LineSeriesGroupOptions extends SeriesGroupOptions<LineSeriesOptions> {
2187
2240
  */
2188
2241
  lineType?: LineType;
2189
2242
  /**
2243
+ * 이 그룹에 포함된 데이터포인트를 표시하기 위한 y축 기준 위치 값.<br/>
2244
+ * 또, 이 값을 지정하지 않은 경우 포함된 시리즈의 {@config baseValue}가 적용되고, 그 값도 설정되지 않으면
2245
+ * 연결된 y축의 {@config config.axis.baseValue}를 따르고,
2246
+ * 그 값도 설정되지 않은 경우 0이 적용된다.
2247
+ * NaN으로 지정하면 기준값 없이 최소값과 축의 padding으로 기준 위치가 정해진다.
2248
+ *
2249
+ * @default undefined
2190
2250
  */
2191
2251
  baseValue?: number;
2192
2252
  }
@@ -2208,6 +2268,13 @@ interface AreaSeriesGroupOptions extends SeriesGroupOptions<AreaSeriesOptions> {
2208
2268
  */
2209
2269
  lineType?: LineType;
2210
2270
  /**
2271
+ * 이 그룹에 포함된 데이터포인트를 표시하기 위한 y축 기준 위치 값.<br/>
2272
+ * 또, 이 값을 지정하지 않은 경우 포함된 시리즈의 {@config baseValue}가 적용되고, 그 값도 설정되지 않으면
2273
+ * 연결된 y축의 {@config config.axis.baseValue}를 따르고,
2274
+ * 그 값도 설정되지 않은 경우 0이 적용된다.
2275
+ * NaN으로 지정하면 기준값 없이 최소값과 축의 padding으로 기준 위치가 정해진다.
2276
+ *
2277
+ * @default undefined
2211
2278
  */
2212
2279
  baseValue?: number;
2213
2280
  }
@@ -2233,7 +2300,12 @@ interface ClusterableSeriesGroupOptions<T extends SeriesOptions = SeriesOptions>
2233
2300
  */
2234
2301
  interface BarSeriesGroupBaseOptions<T extends BarSeriesBaseOptions> extends ClusterableSeriesGroupOptions<T> {
2235
2302
  /**
2236
- * @default 0
2303
+ * 그룹에 포함된 데이터포인트를 표시하기 위한 y축 기준 위치 값.<br/>
2304
+ * 또, 이 값을 지정하지 않은 경우 포함된 시리즈의 {@config baseValue}가 적용되고, 그 값도 설정되지 않으면
2305
+ * 연결된 y축의 {@config config.axis.baseValue}를 따르고,
2306
+ * 그 값도 설정되지 않은 경우 0이 적용된다.
2307
+ *
2308
+ * @default undefined
2237
2309
  */
2238
2310
  baseValue?: number;
2239
2311
  }
@@ -2563,9 +2635,9 @@ declare const BarRangeSeriesType = "barrange";
2563
2635
  * |---|---|
2564
2636
  * |{@page xField}|속성 값, 또는 'x', 'name', 'label' 속성들 중 순서대로 값이 설정된 것이 x 값이 된다.|
2565
2637
  * |{@page yField}|속성 값, 또는 'y', 'value' 속성들 중 순서대로 값이 설정된 것이 y 값이 된다.|
2566
- * |{@page lowField}|속성 값, 또는 'low' 속성 값이 low 값이 된다.|
2638
+ * |{@page lowField}|속성 값, 또는 'low' 속성 값이 low 값이 dl된다.|
2567
2639
  * |{@page colorField}|속성 값, 또는 'color' 속성 값으로 데이터포인트의 개별 색상으로 지정된다.|
2568
- *
2640
+ * BarRangeSeriesOptions
2569
2641
  * @config chart.series[type=barrange]
2570
2642
  */
2571
2643
  interface BarRangeSeriesOptions extends LowRangedSeriesOptions {
@@ -2590,7 +2662,6 @@ interface BarRangeSeriesOptions extends LowRangedSeriesOptions {
2590
2662
  */
2591
2663
  tooltipText?: string;
2592
2664
  }
2593
- declare const BarSeriesType = "bar";
2594
2665
  /**
2595
2666
  * Bar 시리즈.<br/>
2596
2667
  * {@page op.SeriesOptions#type}은 'bar'이다.
@@ -2616,24 +2687,22 @@ declare const BarSeriesType = "bar";
2616
2687
  * |{@page yField}|속성 값, 또는 'y', 'value' 속성들 중 순서대로 값이 설정된 것이 y 값이 된다.|
2617
2688
  * |{@page colorField}|속성 값, 또는 'color' 속성 값으로 데이터포인트의 개별 색상으로 지정된다.|
2618
2689
  * |{@page iconField}|속성 값, 또는 'icon' 속성 값으로 데이터포인트의 개별 이미지가 지정된다.|
2619
- *
2690
+ * j
2620
2691
  * @css 'rct-bar-series'
2621
2692
  * @config chart.series[type=bar]
2622
2693
  */
2623
2694
  interface BarSeriesOptions extends BarSeriesBaseOptions {
2624
2695
  /**
2625
2696
  */
2626
- type?: typeof BarSeriesType;
2697
+ type?: BarSeriesOptionsType;
2627
2698
  /**
2628
- * 지정한 반지름 크기로 데이터포인트 bar의 위쪽 모서리를 둥글게 표시한다.\
2699
+ * 지정한 반지름 크기로 데이터포인트 bar의 위쪽 모서리를 둥글게 표시한다.<br/>
2629
2700
  * 최대값이 bar 폭으로 절반으로 제한되므로 아주 큰 값을 지정하면 반원으로 표시된다.
2630
- *
2631
2701
  */
2632
2702
  topRadius?: number;
2633
2703
  /**
2634
- * 지정한 반지름 크기로 데이터포인트 bar의 아래쪽 모서리를 둥글게 표시한다.
2704
+ * 지정한 반지름 크기로 데이터포인트 bar의 아래쪽 모서리를 둥글게 표시한다.<br/>
2635
2705
  * 최대값이 bar 폭으로 절반으로 제한되므로 아주 큰 값을 지정하면 반원으로 표시된다.
2636
- *
2637
2706
  */
2638
2707
  bottomRadius?: number;
2639
2708
  }
@@ -2687,12 +2756,6 @@ interface PieSeriesGroupOptions extends SeriesGroupOptions<PieSeriesOptions> {
2687
2756
  /**
2688
2757
  */
2689
2758
  interface LinePointLabelOptions extends DataPointLabelOptions {
2690
- /**
2691
- * @override
2692
- *
2693
- * @default 'head'
2694
- */
2695
- position?: PointLabelPosition;
2696
2759
  /**
2697
2760
  * position 위치에서 수평 정렬 상태.
2698
2761
  *
@@ -2794,8 +2857,16 @@ interface LineSeriesOptions extends LineSeriesBaseOptions {
2794
2857
  */
2795
2858
  stepDir?: LineStepDirection;
2796
2859
  /**
2797
- * y축 기준 위/아래 구분의 기준이 되는 값.
2860
+ * 데이터포인트를 표시하기 위한 y축 기준 위치 값.<br/>
2861
+ * 또, 이 값을 지정하지 않은 경우 포함된 시리즈의 {@config baseValue}가 적용되고, 그 값도 설정되지 않으면
2862
+ * 연결된 y축의 {@config config.axis.baseValue}를 따르고,
2863
+ * 그 값도 설정되지 않은 경우 0이 적용된다.
2864
+ * NaN으로 지정하면 기준값 없이 최소값과 축의 padding으로 기준 위치가 정해진다.<br/>
2865
+ * {@page config.series.area} 시리즈와 다르게,
2866
+ * 기준값이 필요한 다른 시리즈가 없고, 축 padding이 적용된 값이 이 값을 넘지 않으면
2867
+ * 축의 최소/최대값은 이 값과 무관하게 설정된다.
2798
2868
  *
2869
+ * @default undefined
2799
2870
  */
2800
2871
  baseValue?: number;
2801
2872
  /**
@@ -2807,7 +2878,6 @@ interface LineSeriesOptions extends LineSeriesBaseOptions {
2807
2878
  connectNullPoints?: boolean;
2808
2879
  /**
2809
2880
  * {@page baseValue} 혹은 y축의 baseValue보다 작은 쪽의 선들에 적용되는 스타일.
2810
- *
2811
2881
  */
2812
2882
  belowStyle?: SVGStyleOrClass;
2813
2883
  /**
@@ -2883,17 +2953,26 @@ interface SplineSeriesOptions extends LineSeriesOptions {
2883
2953
  * @config chart.series[type=area]
2884
2954
  */
2885
2955
  interface AreaSeriesOptions extends LineSeriesOptions {
2886
- /**
2887
- */
2956
+ /** @dummy */
2888
2957
  type?: AreaSeriesOptionsType;
2889
2958
  /**
2890
- * area 영역에 추가적으로 적용되는 {@page it.SVGStyles 스타일셋} 또는 css {@page https://developer.mozilla.org/ko/docs/Web/CSS/CSS_selectors selector}.
2959
+ * 데이터포인트를 표시하기 위한 y축 기준 위치 값.<br/>
2960
+ * 또, 이 값을 지정하지 않은 경우 포함된 시리즈의 {@config baseValue}가 적용되고, 그 값도 설정되지 않으면
2961
+ * 연결된 y축의 {@config config.axis.baseValue}를 따르고,
2962
+ * 그 값도 설정되지 않은 경우 0이 적용된다.
2963
+ * NaN으로 지정하면 기준값 없이 최소값과 축의 padding으로 기준 위치가 정해진다.
2891
2964
  *
2965
+ * @default undefined
2966
+ */
2967
+ baseValue?: number;
2968
+ /**
2969
+ * area 영역에 추가적으로 적용되는 {@page it.SVGStyles 스타일셋} 또는
2970
+ * css {@page https://developer.mozilla.org/ko/docs/Web/CSS/CSS_selectors selector}.<br/>
2892
2971
  */
2893
2972
  areaStyle?: SVGStyleOrClass;
2894
2973
  /**
2895
- * base 아래쪽 area 영역에 추가적으로 적용되는 {@page it.SVGStyles 스타일셋} 또는 css {@page https://developer.mozilla.org/ko/docs/Web/CSS/CSS_selectors selector}.
2896
- *
2974
+ * base 아래쪽 area 영역에 추가적으로 적용되는 {@page it.SVGStyles 스타일셋} 또는
2975
+ * css {@page https://developer.mozilla.org/ko/docs/Web/CSS/CSS_selectors selector}.<br/>
2897
2976
  */
2898
2977
  belowAreaStyle?: SVGStyleOrClass;
2899
2978
  }
@@ -2925,13 +3004,11 @@ declare const BellCurveSeriesType = "bellcurve";
2925
3004
  * @config chart.series[type=bellcurve]
2926
3005
  */
2927
3006
  interface BellCurveSeriesOptions extends AreaSeriesOptions {
2928
- /**
2929
- */
3007
+ /** @dummy */
2930
3008
  type?: typeof BellCurveSeriesType;
2931
3009
  /**
2932
3010
  * 이 시리즈 data point들을 구성할 수 있는 데이터를 포함한 원본 시리즈.
2933
3011
  * 시리즈 이름이나 index로 지정한다.
2934
- *
2935
3012
  */
2936
3013
  source?: string | number;
2937
3014
  /**
@@ -3087,6 +3164,10 @@ interface BubbleSeriesOptions extends MarkerSeriesOptions {
3087
3164
  * @default 'x: <b>${x}</b><br>y: <b>${y}</b><br>volume: <b>${z}</b>'
3088
3165
  */
3089
3166
  tooltipText?: string;
3167
+ /**
3168
+ * @default 2
3169
+ */
3170
+ paddingRate?: number;
3090
3171
  }
3091
3172
  declare const BumpSeriesType = "bump";
3092
3173
  /**
@@ -3387,7 +3468,7 @@ interface ErrorBarSeriesOptions extends LowRangedSeriesOptions {
3387
3468
  }
3388
3469
  /**
3389
3470
  * funnel 시리즈의 point label 옵션.<br/>
3390
- * position이 'auto'이면 'inside'로 표시된다.
3471
+ * position이 'default'이면 'inside'로 표시된다.
3391
3472
  * 라벨들이 겹치면 값이 적은 것들 순서대로 감춘다.
3392
3473
  */
3393
3474
  interface FunnelSeriesLabelOptions extends WidgetSeriesLabelOptions {
@@ -3790,7 +3871,7 @@ declare const _PointLabelRotationMode: {
3790
3871
  type PointLabelRotationMode = typeof _PointLabelRotationMode[keyof typeof _PointLabelRotationMode];
3791
3872
  /**
3792
3873
  * pie 시리즈의 point label 옵션.<br/>
3793
- * position이 'auto'이면 'inside'로 표시된다.
3874
+ * position이 default이면 'inside'로 표시된다.
3794
3875
  * 라벨들이 겹치면 값이 적은 것들 순서대로 감춘다.
3795
3876
  */
3796
3877
  interface PieSeriesLabelOptions extends WidgetSeriesLabelOptions {
@@ -4417,6 +4498,76 @@ interface WordCloudSeriesOptions extends WidgetSeriesOptions {
4417
4498
  */
4418
4499
  placer?: 'default' | 'spiral';
4419
4500
  }
4501
+ interface RaceCallbackArgs {
4502
+ race: any;
4503
+ }
4504
+ type RaceCallback = (args: RaceCallbackArgs) => void;
4505
+ declare const RaceBarSeriesType = "racebar";
4506
+ /**
4507
+ * @ignore
4508
+ * Race bar 시리즈.<br/>
4509
+ *
4510
+ * @css 'rct-racebar-series'
4511
+ * @config chart.series[type=racebar]
4512
+ * @modules race
4513
+ */
4514
+ interface RaceBarSeriesOptions extends BarSeriesOptions {
4515
+ /** @dummy */
4516
+ type?: RaceBarSeriesOptionsType;
4517
+ /**
4518
+ * 표시되는 데이터포인트 최대 개수.<br/>
4519
+ *
4520
+ * @default 10
4521
+ */
4522
+ raceCount?: number;
4523
+ /**
4524
+ * 데이터포인트가 사라지는 위치.<br/>
4525
+ */
4526
+ outLocation?: any;
4527
+ /**
4528
+ * 데이터포인트가 새로 표시되는 위치.<br/>
4529
+ */
4530
+ inLocation?: any;
4531
+ /**
4532
+ * @default 1000
4533
+ */
4534
+ updateInterval?: number;
4535
+ /**
4536
+ * 데이터포인트가 사라지는 애니메이션 동작 기간을 밀리초단위로 지정한다.<br/>
4537
+ *
4538
+ * @default 1000
4539
+ */
4540
+ outDuration?: number;
4541
+ /**
4542
+ * 데이터포인트가 새로 표시되는 애니메이션 동작 기간을 밀리초단위로 지정한다.<br/>
4543
+ *
4544
+ * @default 1000
4545
+ */
4546
+ inDuration?: number;
4547
+ onRaceStart?: RaceCallback;
4548
+ onRace?: RaceCallback;
4549
+ onRaceStop?: RaceCallback;
4550
+ }
4551
+ declare const RaceLineSeriesType = "raceline";
4552
+ /**
4553
+ * @ignore
4554
+ * Race line 시리즈.<br/>
4555
+ *
4556
+ * @css 'rct-raceline-series'
4557
+ * @config chart.series[type=raceline]
4558
+ * @modules race
4559
+ */
4560
+ interface RaceLineSeriesOptions extends LineSeriesOptions {
4561
+ /** @dummy */
4562
+ type?: RaceLineSeriesOptionsType;
4563
+ /**
4564
+ * @default 1000
4565
+ */
4566
+ updateInterval?: number;
4567
+ onRaceStart?: RaceCallback;
4568
+ onRace?: RaceCallback;
4569
+ onRaceStop?: RaceCallback;
4570
+ }
4420
4571
  /** @enum */
4421
4572
  declare const CandlestickSeriesTypes: {
4422
4573
  readonly CandlestickSeriesType: "candlestick";
@@ -4432,14 +4583,34 @@ declare const AreaSeriesTypes: {
4432
4583
  /** @dummy */
4433
4584
  type AreaSeriesOptionsType = typeof AreaSeriesTypes[keyof typeof AreaSeriesTypes];
4434
4585
  /** @enum */
4586
+ declare const RaceLineSeriesTypes: {
4587
+ readonly RaceLineSeriesType: "raceline";
4588
+ };
4589
+ /** @dummy */
4590
+ type RaceLineSeriesOptionsType = typeof RaceLineSeriesTypes[keyof typeof RaceLineSeriesTypes];
4591
+ /** @enum */
4435
4592
  declare const LineSeriesTypes: {
4436
4593
  readonly LineSeriesType: "line";
4437
4594
  readonly AreaSeriesType: "area";
4438
4595
  readonly SplineSeriesType: "spline";
4439
4596
  readonly BellCurveSeriesType: "bellcurve";
4597
+ readonly RaceLineSeriesType: "raceline";
4440
4598
  };
4441
4599
  /** @dummy */
4442
4600
  type LineSeriesOptionsType = typeof LineSeriesTypes[keyof typeof LineSeriesTypes];
4601
+ /** @enum */
4602
+ declare const RaceBarSeriesTypes: {
4603
+ readonly RaceBarSeriesType: "racebar";
4604
+ };
4605
+ /** @dummy */
4606
+ type RaceBarSeriesOptionsType = typeof RaceBarSeriesTypes[keyof typeof RaceBarSeriesTypes];
4607
+ /** @enum */
4608
+ declare const BarSeriesTypes: {
4609
+ readonly BarSeriesType: "bar";
4610
+ readonly RaceBarSeriesType: "racebar";
4611
+ };
4612
+ /** @dummy */
4613
+ type BarSeriesOptionsType = typeof BarSeriesTypes[keyof typeof BarSeriesTypes];
4443
4614
  /** @dummy */
4444
4615
  type SeriesOptionsType = SeriesOptions | SeriesGroupOptions | BarRangeSeriesOptions | BarSeriesOptions | BarSeriesGroupOptions | BellCurveSeriesOptions | BoxPlotSeriesOptions | BubbleSeriesOptions | BumpSeriesGroupOptions | CandlestickSeriesOptions | CircleBarSeriesOptions | DumbbellSeriesOptions | EqualizerSeriesOptions | ErrorBarSeriesOptions | FunnelSeriesOptions | HistogramSeriesOptions | AreaRangeSeriesOptions | AreaSeriesOptions | AreaSeriesGroupOptions | LineSeriesOptions | LineSeriesGroupOptions | SplineSeriesOptions | LollipopSeriesOptions | OhlcSeriesOptions | ParetoSeriesOptions | PieSeriesOptions | PieSeriesGroupOptions | ScatterSeriesOptions | WaterfallSeriesOptions | TreemapSeriesOptions | HeatmapSeriesOptions | VectorSeriesOptions;
4445
4616
 
@@ -4851,7 +5022,7 @@ interface ZoomCallbackArgs {
4851
5022
  */
4852
5023
  interface BodyOptions extends ChartItemOptions {
4853
5024
  /**
4854
- * {@page config.#polar 극좌표계} 차트일 때 반지름.<br/>
5025
+ * {@page config.config#polar 극좌표계} 차트일 때 반지름.<br/>
4855
5026
  *
4856
5027
  * @default '45%'
4857
5028
  */
@@ -5216,32 +5387,35 @@ interface TooltipOptions extends ChartItemOptions {
5216
5387
  }
5217
5388
 
5218
5389
  /**
5390
+ * 분할(split) 모드에서 개별 pane 설정 옵션.<br/>
5219
5391
  */
5220
5392
  interface PaneOptions extends ChartItemOptions {
5221
5393
  /**
5222
5394
  */
5223
- width?: number;
5224
- /**
5225
- */
5226
- height?: number;
5395
+ row?: number;
5227
5396
  /**
5228
5397
  */
5229
- inverted?: boolean;
5398
+ col?: number;
5230
5399
  /**
5400
+ * body 설정 옵션.<br/>
5231
5401
  */
5232
5402
  body: PaneBodyOptions;
5233
5403
  }
5234
5404
  /**
5405
+ * 분할(split) 모드에서 개별 pane의 body 설정 옵션.<br/>
5235
5406
  */
5236
5407
  interface PaneBodyOptions extends BodyOptions {
5408
+ /**
5409
+ * true로 지정하면 chart loading시 이 설정에 포함되지 않은 속성들을 차트 기본 body의 설정에서 가져온다.<br/>
5410
+ * @default true
5411
+ */
5412
+ extended?: boolean;
5237
5413
  }
5238
5414
  /**
5239
- * 다중 분할 panes.\
5415
+ * 분할(split) 모드 설정 옵션.<br/>
5240
5416
  * 각 pane에 해당하는 x, y축이 반드시 존재해야 한다.
5241
5417
  * axis는 {@page config.base.axis#row row}, {@page config.base.axis#col col} 속성으로 위치를 지정한다.
5242
- * 시리즈는 {@page config.base.series#row row}, {@page config.base.series#col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
5243
- * // 현재 문서 구조로 SeriesGroup을 가리킬 수 없음.
5244
- * // 시리즈그룹은 {@page SeriesGroup.row row}, {@page SeriesGroup.col col} 속성으로 지정하거나, 아니면 axis 위치에 따라 자동으로 결정된다.
5418
+ * 시리즈는 {@page config.base.series.xAxis}, {@page config.base.series.yAxis} 설정에 따라 연결된 axis 위치에 따라 자동으로 결정된다.
5245
5419
  *
5246
5420
  * @config chart.split
5247
5421
  * @modules split
@@ -5252,6 +5426,13 @@ interface SplitOptions extends ChartItemOptions {
5252
5426
  * @default false
5253
5427
  */
5254
5428
  visible?: boolean;
5429
+ /**
5430
+ * true로 지정하면 chart loading시 분할 pane들의 body에 설정하지 않은 속성들을 차트 기본 body의 설정에서 가져오도록 한다.<br/>
5431
+ * 각 pane의 body 설정에서 별도로 지정할 수 있다.
5432
+ *
5433
+ * @default true
5434
+ */
5435
+ extendBody?: boolean;
5255
5436
  /**
5256
5437
  * y축 방향 분할 수를 지정한다.<br/>
5257
5438
  * //숫자로 지정하면 동일한 높이를 갖는 pane들로 표시된다.
@@ -5271,6 +5452,7 @@ interface SplitOptions extends ChartItemOptions {
5271
5452
  * @default 0
5272
5453
  */
5273
5454
  gap?: number;
5455
+ panes?: PaneOptions[];
5274
5456
  }
5275
5457
 
5276
5458
  /**
@@ -5515,7 +5697,6 @@ declare class TextElement extends RcElement {
5515
5697
  setContrast(target: Element, darkStyle: SVGStyleOrClass, brightStyle: SVGStyleOrClass): TextElement;
5516
5698
  clearDom(): void;
5517
5699
  setStyles(styles: any): boolean;
5518
- applyStyles(styles: any): void;
5519
5700
  setStyle(prop: string, value: string): boolean;
5520
5701
  getBBox(): IRect;
5521
5702
  /**
@@ -5613,7 +5794,6 @@ declare class ChartItem<OP extends ChartItemOptions = ChartItemOptions> extends
5613
5794
  }): void;
5614
5795
  /**
5615
5796
  * @internal
5616
- * for Testing...
5617
5797
  */
5618
5798
  _initObject(): this;
5619
5799
  /**
@@ -5756,9 +5936,9 @@ declare class ChartItem<OP extends ChartItemOptions = ChartItemOptions> extends
5756
5936
  /** @internal */
5757
5937
  protected _setDim(options: ChartItemOptions, prop: string): void;
5758
5938
  /** @internal */
5759
- protected _setDims(options: ChartItemOptions, ...props: string[]): void;
5939
+ protected _setDims(options: OP, ...props: string[]): void;
5760
5940
  /** @internal */
5761
- protected _doApply(options: ChartItemOptions): void;
5941
+ protected _doApply(op: OP): void;
5762
5942
  /** @internal */
5763
5943
  protected _doUpdate(source: any): void;
5764
5944
  /** @internal */
@@ -5780,7 +5960,7 @@ declare abstract class ChartItemCollection<T extends ChartItem> {
5780
5960
  * 차트에 표시되는 텍스트 설정 모델들의 기반 클래스.<br/>
5781
5961
  * 설정 {@link options} 모델은 {@page op.ChartTextOptions}이다.
5782
5962
  */
5783
- declare abstract class ChartText<OP extends ChartTextOptions> extends ChartItem<OP> {
5963
+ declare abstract class ChartText<OP extends ChartTextOptions = ChartTextOptions> extends ChartItem<OP> {
5784
5964
  static defaults: ChartTextOptions;
5785
5965
  private _outlineThickness;
5786
5966
  private _numberSymbols;
@@ -5801,7 +5981,7 @@ declare abstract class ChartText<OP extends ChartTextOptions> extends ChartItem<
5801
5981
  /** @internal */
5802
5982
  prepareRich(text: string): void;
5803
5983
  protected _doSetSimple(src: any): boolean;
5804
- protected _doApply(options: ChartTextOptions): void;
5984
+ protected _doApply(options: OP): void;
5805
5985
  protected _getNumberText(value: any, useSymbols: boolean, forceSymbols: boolean): string;
5806
5986
  protected _getText(text: string, value: any, useSymbols: boolean, forceSymbols: boolean): string;
5807
5987
  }
@@ -6193,15 +6373,108 @@ declare class Tooltip extends ChartItem<TooltipOptions> {
6193
6373
  protected _doApply(options: TooltipOptions): void;
6194
6374
  }
6195
6375
 
6376
+ /**
6377
+ * 카테고리축의 tick 모델.<br/>
6378
+ * {@page options} 모델은 {@page op.CategoryAxisTickOptions}이다.
6379
+ */
6380
+ declare class CategoryAxisTick extends AxisTick<CategoryAxisTickOptions> {
6381
+ static defaults: CategoryAxisTickOptions;
6382
+ getPosition(): CategoryTickPosition;
6383
+ }
6384
+ /**
6385
+ * @internal
6386
+ *
6387
+ * 카테고리축의 라벨 모델.<br/>
6388
+ * {@page options} 모델은 {@page op.AxisLabelOptions}이다.
6389
+ */
6390
+ declare class CategoryAxisLabel extends AxisLabel<CategoryAxisLabelOptions> {
6391
+ static defaults: CategoryAxisLabelOptions;
6392
+ sep: string;
6393
+ getTick(index: number, v: any): string;
6394
+ getIcon(tick: IAxisTick): string;
6395
+ }
6396
+ /**
6397
+ * @internal
6398
+ *
6399
+ * 카테고리축의 grid 모델.<br/>
6400
+ * {@page options} 모델은 {@page op.AxisGridOptions}이다.
6401
+ */
6402
+ declare class CategoryAxisGrid extends AxisGrid<AxisGridOptions> {
6403
+ getPoints(axis: CategoryAxis): number[];
6404
+ }
6405
+ /**
6406
+ * 카테고리 축 모델.<br/>
6407
+ * {@page op.AxisOptions#type}은 {@page config.xAxis.category 'category'}이고,
6408
+ * {@page options 설정} 모델은 {@page op.CategoryAxisOptions}이다.
6409
+ */
6410
+ declare class CategoryAxis extends Axis<CategoryAxisOptions> {
6411
+ static type: string;
6412
+ static defaults: CategoryAxisOptions;
6413
+ _categories: {
6414
+ c: string;
6415
+ t: string;
6416
+ w: number;
6417
+ i?: string;
6418
+ }[];
6419
+ _weights: number[];
6420
+ _len: number;
6421
+ private _catStart;
6422
+ private _catStep;
6423
+ private _map;
6424
+ private _catPad;
6425
+ private _catMin;
6426
+ private _catMax;
6427
+ private _catLen;
6428
+ _pts: number[];
6429
+ _tstep: number;
6430
+ get tick(): CategoryAxisTick;
6431
+ /**
6432
+ * @override
6433
+ */
6434
+ get label(): CategoryAxisLabel;
6435
+ xValueAt(pos: number): number;
6436
+ getCategorySeparator(): string;
6437
+ _type(): string;
6438
+ unitPad(): number;
6439
+ continuous(): boolean;
6440
+ polarOff(): number;
6441
+ _prepareZoom(): AxisZoom;
6442
+ protected _createGrid(): CategoryAxisGrid;
6443
+ protected _createTickModel(): CategoryAxisTick;
6444
+ protected _createLabel(): CategoryAxisLabel;
6445
+ collectValues(): void;
6446
+ getStartAngle(): number;
6447
+ protected _doPrepareRender(): void;
6448
+ protected _adjustMinMax(min: number, max: number, length: number): {
6449
+ min: number;
6450
+ max: number;
6451
+ };
6452
+ protected _doBuildTicks(min: number, max: number, length: number, phase: number): IAxisTick[];
6453
+ _calcPoints(length: number, phase: number): void;
6454
+ getPos(length: number, value: number): number;
6455
+ valueAt(length: number, pos: number): number;
6456
+ getUnitLen(length: number, value: number): number;
6457
+ getLabelLength(length: number, value: number): number;
6458
+ getValue(value: any): number;
6459
+ getXLabel(value: number): any;
6460
+ _doCalculateRange(values: number[]): {
6461
+ min: number;
6462
+ max: number;
6463
+ };
6464
+ private $_collectCategories;
6465
+ }
6466
+
6196
6467
  /**
6197
6468
  * {@page Series 시리즈}의 {@page Series.pointLabel 데이터포인트 라벨} 표시에 대한 모델.<br/>
6198
6469
  * 옵션 설정 모델은 {@page DataPointLabelOptions}이다.
6199
6470
  */
6200
6471
  declare class DataPointLabel<OP extends DataPointLabelOptions = DataPointLabelOptions> extends IconedText<OP> {
6201
- static readonly OFFSET = 5;
6472
+ static readonly OFFSET = 4;
6202
6473
  static defaults: DataPointLabelOptions;
6203
6474
  private _point;
6204
6475
  _domain: IRichTextDomain;
6476
+ _overflowFit: number;
6477
+ _vertAdujst: number;
6205
6478
  protected _doInit(op: OP): void;
6206
6479
  getValue(p: DataPoint, index: number): any;
6207
6480
  getTextDomain(p: DataPoint): IRichTextDomain;
@@ -6210,16 +6483,27 @@ declare class DataPointLabel<OP extends DataPointLabelOptions = DataPointLabelOp
6210
6483
  getDefaultIconPos(): IconPosition;
6211
6484
  protected _isVisible(): boolean;
6212
6485
  protected _doSetSimple(src: any): boolean;
6486
+ protected _doApply(op: OP): void;
6213
6487
  protected _doPrepareRender(chart: IChart): void;
6214
6488
  }
6215
6489
  interface IPlottingItem {
6490
+ _type(): string;
6216
6491
  options: SeriesOptions | SeriesGroupOptions;
6217
- _row: number;
6218
- _col: number;
6492
+ _xAxisObj: IAxis;
6493
+ _yAxisObj: IAxis;
6494
+ _valid: boolean;
6495
+ get row(): number;
6496
+ setRow(value: number): void;
6497
+ get col(): number;
6498
+ setCol(value: number): void;
6219
6499
  index: number;
6220
6500
  visible: boolean;
6221
- setCol(col: number): void;
6222
- setRow(row: number): void;
6501
+ _sBase: number;
6502
+ _yMin: number;
6503
+ _yMax: number;
6504
+ getAxisPadRate(): number;
6505
+ isMarker(): boolean;
6506
+ isXY(): boolean;
6223
6507
  getVisibleSeries(): ISeries[];
6224
6508
  _getVisiblePoints(): DataPoint[];
6225
6509
  getLegendSources(list: ILegendSource[]): void;
@@ -6230,8 +6514,8 @@ interface IPlottingItem {
6230
6514
  isClusterable(): boolean;
6231
6515
  getBaseValue(axis: IAxis): number;
6232
6516
  isBased(axis: IAxis): boolean;
6233
- canMinPadding(axis: IAxis, min: number): boolean;
6234
- canMaxPadding(axis: IAxis, max: number): boolean;
6517
+ canMinPadding(axis: IAxis, axisMin: number, axisBase: number): boolean;
6518
+ canMaxPadding(axis: IAxis, axisMax: number, axisBase: number): boolean;
6235
6519
  collectCategories(axis: IAxis): string[];
6236
6520
  _prepareRender(): void;
6237
6521
  prepareAfter(): void;
@@ -6240,6 +6524,8 @@ interface IPlottingItem {
6240
6524
  prepareReferents(axis: IAxis): void;
6241
6525
  seriesChanged(): boolean;
6242
6526
  connectable(axis: IAxis): boolean;
6527
+ isRace(): boolean;
6528
+ getCategoryPos?(value: number): number;
6243
6529
  }
6244
6530
  /**
6245
6531
  * 시리즈 {@page https://en.wikipedia.org/wiki/Trend_line_(technical_analysis) 추세선} 모델.<br/>
@@ -6324,7 +6610,6 @@ interface ISeries extends IPlottingItem {
6324
6610
  initPoints(source: any[]): DataPoint[];
6325
6611
  getPoints(): DataPointCollection;
6326
6612
  followPointer(): boolean;
6327
- isMarker(): boolean;
6328
6613
  }
6329
6614
  declare class DeleteAnimation extends RcAnimation {
6330
6615
  points: DataPointCollection;
@@ -6349,13 +6634,14 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6349
6634
  protected _pointLabel: DataPointLabel;
6350
6635
  protected _trendline: Trendline;
6351
6636
  private _name;
6352
- _row: number;
6353
- _col: number;
6354
- index: number;
6355
- seriesIndex: number;
6637
+ private _row;
6638
+ private _col;
6639
+ private _index;
6640
+ _seriesIndex: number;
6356
6641
  _group: SeriesGroup;
6357
6642
  _xAxisObj: IAxis;
6358
6643
  _yAxisObj: IAxis;
6644
+ _valid: boolean;
6359
6645
  _xFielder: (src: any) => any;
6360
6646
  _yFielder: (src: any) => any;
6361
6647
  _zFielder: (src: any) => any;
@@ -6394,6 +6680,9 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6394
6680
  _labelPosCallback: (p: DataPointCallbackArgs) => PointLabelPosition;
6395
6681
  _labelOff: number;
6396
6682
  _labelOffCallback: (p: DataPointCallbackArgs) => number;
6683
+ _sBase: number;
6684
+ _yMin: number;
6685
+ _yMax: number;
6397
6686
  protected _doInit(op: OP): void;
6398
6687
  protected _doInitChildren(op: {
6399
6688
  [child: string]: ChartItemOptions;
@@ -6407,6 +6696,10 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6407
6696
  getTooltipParam(series: ISeries, point: DataPoint, param: string): any;
6408
6697
  _type(): string;
6409
6698
  _viewType(): string;
6699
+ /**
6700
+ * 차트나 시리즈그룹 내에서 위치.<br/>
6701
+ */
6702
+ get index(): number;
6410
6703
  /**
6411
6704
  * 시리즈 이름.<br/>
6412
6705
  * 시리즈 생성시 지정된 후 변경할 수 없다.
@@ -6414,6 +6707,16 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6414
6707
  * 레전드나 툴팁에서 시리즈를 나타내는 텍스트로도 사용된다.
6415
6708
  */
6416
6709
  get name(): string;
6710
+ /**
6711
+ * row
6712
+ */
6713
+ get row(): number;
6714
+ setRow(value: number): void;
6715
+ /**
6716
+ * col
6717
+ */
6718
+ get col(): number;
6719
+ setCol(value: number): void;
6417
6720
  /**
6418
6721
  * 데이터포인트 label 설정 모델.<br/>
6419
6722
  */
@@ -6473,6 +6776,7 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6473
6776
  */
6474
6777
  isClusterable(): boolean;
6475
6778
  isMarker(): boolean;
6779
+ isXY(): boolean;
6476
6780
  displayName(): string;
6477
6781
  legendMarker(doc: Document, size: number): RcElement;
6478
6782
  legendColor(): string;
@@ -6486,27 +6790,28 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6486
6790
  */
6487
6791
  getBaseValue(axis: IAxis): number;
6488
6792
  isBased(axis: IAxis): boolean;
6489
- canMinPadding(axis: IAxis, min: number): boolean;
6490
- canMaxPadding(axis: IAxis, max: number): boolean;
6793
+ canMinPadding(axis: IAxis, axisMin: number, axisBase: number): boolean;
6794
+ canMaxPadding(axis: IAxis, axisMax: number, axisBase: number): boolean;
6491
6795
  hasShape(): boolean;
6492
6796
  setShape(shape: Shape): void;
6493
6797
  seriesChanged(): boolean;
6494
6798
  getMinPointWidth(): number;
6799
+ isRace(): boolean;
6495
6800
  getVisibleSeries(): ISeries[];
6496
6801
  protected _getNoClip(polar: boolean): boolean;
6497
6802
  needClip(polar: boolean): boolean;
6498
6803
  connectable(axis: IAxis): boolean;
6499
- setCol(col: number): void;
6500
- setRow(row: number): void;
6501
6804
  initPoints(source: any[]): DataPoint[];
6502
6805
  private $_getXStart;
6503
6806
  private $_getXStep;
6504
6807
  protected _buildVisPoints(points: DataPoint[]): DataPoint[];
6505
6808
  protected _prepareRunPoints(xAxis: IAxis, yAxis: IAxis): void;
6506
6809
  protected _dataSourceChanged(): void;
6810
+ _connect(chart: IChart): void;
6507
6811
  _prepareRender(): void;
6508
6812
  prepareAfter(): void;
6509
6813
  collectCategories(axis: IAxis): string[];
6814
+ protected _doCollectCategories(axis: CategoryAxis): string[];
6510
6815
  /**
6511
6816
  * @internal
6512
6817
  *
@@ -6515,6 +6820,7 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6515
6820
  */
6516
6821
  collectValues(axis: IAxis, vals: number[]): void;
6517
6822
  collectRanges(vals: number[]): void;
6823
+ getAxisPadRate(): number;
6518
6824
  protected _getRangeMinMax(axis: 'x' | 'y' | 'z'): {
6519
6825
  min: number;
6520
6826
  max: number;
@@ -6524,7 +6830,7 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6524
6830
  refer(other: Series, axis: IAxis): void;
6525
6831
  getLegendSources(list: ILegendSource[]): void;
6526
6832
  getLabelPos(labels: DataPointLabel): PointLabelPosition;
6527
- protected _getLabelAutoPos(labels: DataPointLabel, pos: PointLabelPosition): PointLabelPosition;
6833
+ protected _getLabelDefaultPos(labels: DataPointLabel, pos: PointLabelPosition): PointLabelPosition;
6528
6834
  getLabelPos2(labels: DataPointLabel, p: DataPoint): PointLabelPosition;
6529
6835
  getLabelOff(off: number): number;
6530
6836
  getLabelOff2(p: DataPoint): number;
@@ -6630,7 +6936,8 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6630
6936
  */
6631
6937
  removePoints(pts: (DataPoint | string | number)[]): number;
6632
6938
  followPointer(): boolean;
6633
- protected _doApply(options: SeriesOptions): void;
6939
+ protected _doApply(op: OP): void;
6940
+ _setIndex(index: number, seriesIndex?: number): void;
6634
6941
  protected _createLabel(chart: IChart): DataPointLabel;
6635
6942
  protected _createPoint(source: any): DataPoint;
6636
6943
  private $_addPoint;
@@ -6646,7 +6953,7 @@ declare abstract class Series<OP extends SeriesOptions = SeriesOptions> extends
6646
6953
  protected _defaultLoadAnimation(): SeriesLoadAnimation;
6647
6954
  _load(source: any): OP;
6648
6955
  protected _doLoadData(src: any): any[];
6649
- _loadPoints(data: any): void;
6956
+ _loadPoints(data: any): this;
6650
6957
  protected _doLoadPoints(src: any): void;
6651
6958
  protected _doPrepareRender(): void;
6652
6959
  protected _setViewRange(p: DataPoint, axis: 'x' | 'y' | 'z'): void;
@@ -6690,6 +6997,7 @@ declare class PlottingItemCollection extends ChartItemCollection<PlottingItem> {
6690
6997
  add(source: any): Series;
6691
6998
  remove(series: string | Series): Series;
6692
6999
  updateData(values: any[]): void;
7000
+ connect(chart: IChart): void;
6693
7001
  prepareRender(): void;
6694
7002
  prepareAfter(): void;
6695
7003
  private $_loadItem;
@@ -6750,7 +7058,7 @@ declare abstract class WidgetSeriesLabel<OP extends WidgetSeriesLabelOptions = W
6750
7058
  */
6751
7059
  get connector(): WidgetSeriesConnector;
6752
7060
  getAlign(): number;
6753
- protected _doApply(options: WidgetSeriesLabelOptions): void;
7061
+ protected _doApply(options: OP): void;
6754
7062
  }
6755
7063
  declare class OthersGroup extends ChartItem<OthersGroupOptions> {
6756
7064
  private static readonly DEF_COUNT;
@@ -6778,12 +7086,12 @@ declare abstract class WidgetSeries<OP extends WidgetSeriesOptions = WidgetSerie
6778
7086
  get subLabel(): WidgetSeriesLabel;
6779
7087
  get othersGroup(): OthersGroup;
6780
7088
  getCenter(plotWidth: number, plotHeight: number): Point;
6781
- protected _getLabelAutoPos(labels: WidgetSeriesLabel, pos: PointLabelPosition): PointLabelPosition;
7089
+ protected _getLabelDefaultPos(labels: WidgetSeriesLabel, pos: PointLabelPosition): PointLabelPosition;
6782
7090
  needAxes(): boolean;
6783
7091
  _colorByPoint(): boolean;
6784
7092
  getLegendSources(list: ILegendSource[]): void;
6785
7093
  _isVisibleInLegend(p: WidgetSeriesPoint): boolean;
6786
- protected _doApply(options: WidgetSeriesOptions): void;
7094
+ protected _doApply(options: OP): void;
6787
7095
  canMinPadding(axis: IAxis, min: number): boolean;
6788
7096
  canMaxPadding(axis: IAxis, max: number): boolean;
6789
7097
  protected _dataSourceChanged(): void;
@@ -6800,7 +7108,7 @@ declare abstract class RadialSeries<OP extends RadialSeriesOptions = RadialSerie
6800
7108
  private _radius;
6801
7109
  private _radiusDim;
6802
7110
  getRadius(plotWidth: number, plotHeight: number): number;
6803
- protected _doApply(options: RadialSeriesOptions): void;
7111
+ protected _doApply(options: OP): void;
6804
7112
  }
6805
7113
  /**
6806
7114
  */
@@ -6857,18 +7165,28 @@ declare abstract class SeriesGroup<T extends Series = Series, OP extends SeriesG
6857
7165
  tooltipFooter?: string;
6858
7166
  }, series: ISeries[], point: DataPoint): string;
6859
7167
  static inflateTooltipParam(series: ISeries[], ser: ISeries, point: DataPoint, param: string): string;
6860
- _row: number;
6861
- _col: number;
6862
- index: number;
7168
+ private _row;
7169
+ private _col;
7170
+ private _index;
6863
7171
  private _series;
6864
7172
  protected _visibles: T[];
6865
7173
  _xAxisObj: IAxis;
6866
7174
  _yAxisObj: IAxis;
7175
+ _valid: boolean;
6867
7176
  _stackPoints: Map<number, DataPoint[]>;
6868
7177
  _stacked: boolean;
6869
7178
  private _seriesChanged;
7179
+ _sBase: number;
7180
+ _yMin: number;
7181
+ _yMax: number;
6870
7182
  getTooltipText(series: ISeries, point: DataPoint): string;
6871
7183
  getTooltipParam(series: ISeries, point: DataPoint, param: string): string;
7184
+ isXY(): boolean;
7185
+ isMarker(): boolean;
7186
+ get col(): number;
7187
+ setCol(value: number): void;
7188
+ get row(): number;
7189
+ setRow(value: number): void;
6872
7190
  get series(): T[];
6873
7191
  needAxes(): boolean;
6874
7192
  isEmpty(visibleOnly: boolean): boolean;
@@ -6877,11 +7195,11 @@ declare abstract class SeriesGroup<T extends Series = Series, OP extends SeriesG
6877
7195
  isClusterable(): boolean;
6878
7196
  getBaseValue(axis: IAxis): number;
6879
7197
  getVisibleSeries(): ISeries[];
7198
+ isRace(): boolean;
7199
+ get index(): number;
6880
7200
  get visCount(): number;
6881
7201
  _type(): string;
6882
7202
  _seriesType(): string;
6883
- setCol(col: number): void;
6884
- setRow(row: number): void;
6885
7203
  connectable(axis: IAxis): boolean;
6886
7204
  isFirstVisible(series: ISeries): boolean;
6887
7205
  isLastVisible(series: ISeries): boolean;
@@ -6890,19 +7208,22 @@ declare abstract class SeriesGroup<T extends Series = Series, OP extends SeriesG
6890
7208
  prepareReferents(axis: IAxis): void;
6891
7209
  collectCategories(axis: IAxis): string[];
6892
7210
  getLegendSources(list: ILegendSource[]): void;
7211
+ getAxisPadRate(): number;
6893
7212
  isBased(axis: IAxis): boolean;
6894
- canMinPadding(axis: IAxis, min: number): boolean;
6895
- canMaxPadding(axis: IAxis, max: number): boolean;
7213
+ canMinPadding(axis: IAxis, axisMin: number, axisBase: number): boolean;
7214
+ canMaxPadding(axis: IAxis, axisMax: number, axisBase: number): boolean;
6896
7215
  getVisPoints(p: DataPoint): DataPoint[];
6897
7216
  seriesChanged(): boolean;
6898
7217
  remove(series: T): boolean;
6899
7218
  _getVisiblePoints(): DataPoint[];
6900
- protected _doApply(options: ChartItemOptions): void;
7219
+ protected _doApply(op: OP): void;
6901
7220
  protected _doSaveArray(prop: string, value: any[]): any[];
6902
7221
  _prepareRender(): void;
7222
+ _connect(chart: IChart): void;
6903
7223
  protected _doPrepareRender(chart: IChart): void;
6904
7224
  prepareAfter(): void;
6905
7225
  protected abstract _canContain(ser: Series): boolean;
7226
+ _setIndex(index: number): void;
6906
7227
  protected _doPrepareSeries(series: T[]): void;
6907
7228
  private $_loadSeries;
6908
7229
  private $_add;
@@ -6930,6 +7251,7 @@ declare abstract class ClusterableSeriesGroup<T extends Series = Series, OP exte
6930
7251
  declare abstract class MarkerSeries<OP extends MarkerSeriesOptions = MarkerSeriesOptions> extends ConnectableSeries<OP> {
6931
7252
  static defaults: MarkerSeriesOptions;
6932
7253
  isMarker(): boolean;
7254
+ isXY(): boolean;
6933
7255
  }
6934
7256
 
6935
7257
  /**
@@ -7050,6 +7372,7 @@ declare class DataPointCollection {
7050
7372
  get owner(): ISeries;
7051
7373
  get count(): number;
7052
7374
  isEmpty(): boolean;
7375
+ _internalPoints(): DataPoint[];
7053
7376
  get(index: number): DataPoint;
7054
7377
  pointAt(xValue: number | any, yValue?: number | any): DataPoint;
7055
7378
  contains(p: DataPoint): boolean;
@@ -7151,6 +7474,8 @@ declare class Crosshair extends ChartItem<CrosshairOptions> {
7151
7474
  * @internal
7152
7475
  */
7153
7476
  interface IAxis {
7477
+ get row(): number;
7478
+ get col(): number;
7154
7479
  _type(): string;
7155
7480
  chart: IChart;
7156
7481
  options: AxisOptions;
@@ -7480,8 +7805,8 @@ declare abstract class Axis<OP extends AxisOptions = AxisOptions> extends ChartI
7480
7805
  private _scrollBar;
7481
7806
  private _name;
7482
7807
  _index: number;
7483
- _row: number;
7484
- _col: number;
7808
+ private _row;
7809
+ private _col;
7485
7810
  _isX: boolean;
7486
7811
  _isHorz: boolean;
7487
7812
  _isOpposite: boolean;
@@ -7520,6 +7845,8 @@ declare abstract class Axis<OP extends AxisOptions = AxisOptions> extends ChartI
7520
7845
  * 축 이름.<br/>
7521
7846
  */
7522
7847
  get name(): string;
7848
+ get row(): number;
7849
+ get col(): number;
7523
7850
  /**
7524
7851
  * 축 타이틀 모델<br/>
7525
7852
  */
@@ -7565,6 +7892,7 @@ declare abstract class Axis<OP extends AxisOptions = AxisOptions> extends ChartI
7565
7892
  */
7566
7893
  isEmpty(): boolean;
7567
7894
  private _checkEmpty;
7895
+ checkVisible(): boolean;
7568
7896
  getBaseValue(): number;
7569
7897
  length(): number;
7570
7898
  axisMin(): number;
@@ -7593,17 +7921,7 @@ declare abstract class Axis<OP extends AxisOptions = AxisOptions> extends ChartI
7593
7921
  * @param max
7594
7922
  * @param length 축의 갯수.
7595
7923
  */
7596
- protected abstract _doBuildTicks(min: number, max: number, length: number): IAxisTick[];
7597
- /**
7598
- *
7599
- * @param min
7600
- * @param max
7601
- * @param length 축의 갯수.
7602
- */
7603
- protected abstract _adjustMinMax(min: number, max: number, length: number): {
7604
- min: number;
7605
- max: number;
7606
- };
7924
+ protected abstract _doBuildTicks(min: number, max: number, length: number, phase: number): IAxisTick[];
7607
7925
  value2Tooltip(value: number): any;
7608
7926
  isBased(): boolean;
7609
7927
  isBaseVisible(): boolean;
@@ -7621,7 +7939,7 @@ declare abstract class Axis<OP extends AxisOptions = AxisOptions> extends ChartI
7621
7939
  *
7622
7940
  * @param length 축의 갯수.
7623
7941
  */
7624
- _buildTicks(length: number): void;
7942
+ _buildTicks(length: number, phase: number): void;
7625
7943
  _calcPoints(length: number, phase: number): void;
7626
7944
  /**
7627
7945
  * @internal
@@ -7666,8 +7984,9 @@ declare abstract class Axis<OP extends AxisOptions = AxisOptions> extends ChartI
7666
7984
  setPrevRate(rate: number): void;
7667
7985
  prev(pos: number): number;
7668
7986
  abstract xValueAt(pos: number): number;
7987
+ _posValue(): 0 | 1 | -1;
7669
7988
  _load(source: any): OP;
7670
- protected _doApply(options: AxisOptions): void;
7989
+ protected _doApply(op: OP): void;
7671
7990
  protected _setMinMax(min: number, max: number): void;
7672
7991
  protected abstract _createGrid(): AxisGrid;
7673
7992
  _connect(series: IPlottingItem): void;
@@ -7683,6 +8002,7 @@ declare class AxisCollection extends ChartItemCollection<Axis> {
7683
8002
  /** @internal */
7684
8003
  _clear(): void;
7685
8004
  load(src: any): void;
8005
+ visibles(): Axis<AxisOptions>[];
7686
8006
  contains(axis: Axis): boolean;
7687
8007
  get(name: string | number): Axis;
7688
8008
  disconnect(): void;
@@ -7693,7 +8013,7 @@ declare class AxisCollection extends ChartItemCollection<Axis> {
7693
8013
  prepareRender(): void;
7694
8014
  afterRender(): void;
7695
8015
  /** @internal */
7696
- _buildTicks(length: number): void;
8016
+ _buildTicks(length: number, phase: number): void;
7697
8017
  connect(series: IPlottingItem): Axis;
7698
8018
  forEach(callback: (p: Axis, i?: number) => any): void;
7699
8019
  isZoomed(): boolean;
@@ -7839,42 +8159,78 @@ interface StepCallbackArgs {
7839
8159
  */
7840
8160
  chart: object;
7841
8161
  /**
8162
+ * plot 영역 크기
7842
8163
  */
7843
8164
  length: number;
7844
8165
  /**
8166
+ * 연결된 시리즈(들)의 최소값.
7845
8167
  */
7846
8168
  minValue: number;
7847
8169
  /**
8170
+ * 연결된 시리즈(들)의 최대값.
7848
8171
  */
7849
8172
  maxValue: number;
8173
+ /**
8174
+ * {@page min}에 padding 등이 적용된 최소값.
8175
+ */
8176
+ min: number;
8177
+ /**
8178
+ * {@page max}에 padding 등이 적용된 최대값.
8179
+ */
8180
+ max: number;
7850
8181
  }
7851
8182
  /**
7852
- * 연속축의 tick 설정 모델.<br/>
8183
+ * 연속 축의 tick step 설정 모델.<br/>
8184
+ * {@page stepPixels}, {@page stepInterval} 등 다양한 방식으로 축 tick 간격을 구성할 수 있다.
7853
8185
  */
7854
8186
  interface ContinuousAxisTickOptions extends AxisTickOptions {
7855
8187
  /**
7856
- * tick들 사이의 값 간격.
8188
+ * tick들 사이의 값 간격을 지정해서 tick step을 구성하도록 한다.<br/>
8189
+ * 0보다 큰 값을 리턴하는 콜백을 설정해서 동적으로 간격을 지정할 수 있다.<br/>
8190
+ */
8191
+ stepInterval?: number | string | ((args: StepCallbackArgs) => string);
8192
+ /**
8193
+ * tick들 사이의 대략적인 픽셀 간격아나 간격 목록.<br/>
8194
+ * 최소/최대값을 기준으로 동적으로 목록을 리턴하는 콜백을 지정할 수도 있다.
8195
+ * 다른 설정이 없다면 이 값을 기준으로 tick 개수가 결정된다.<br/>
8196
+ * [plot크기, pixels] 목록으로 지정한다. 단일 값으로 지정하면 [[Infiniy, pixels]]으로 설정된다.
8197
+ * plot 영역의 크기가 첫번째 값 이하면 두번째로 지정한 값만큼의 pixels로 계산한다.<br/>
8198
+ * 지정하지 않거나 잘못 지정하면 아래 목록으로 기본 적용된다.<br/>
8199
+ * 수직축: `[[130, 36], [200, 48], [450, 72], [Infinity, 96]]`<br/>
8200
+ * 수평축: `[[400, 48], [700, 72], [Infinity, 96]]`<br/>
8201
+ * polar: `48`<br/>
7857
8202
  */
7858
- stepInterval?: number | string;
8203
+ stepPixels?: number | [number, number][] | ((args: StepCallbackArgs) => [number, number][]);
7859
8204
  /**
7860
- * tick들 사이의 대략적인 픽셀 간격.<br/>
7861
- * 다른 설정이 없다면 값을 기준으로 tick 개수가 결정된다.
8205
+ * {@page stepPixels}가 적용 중일 때,
8206
+ * 최소 최대값의 차이가 1보다 크고 10미만이면 소수점 값의 tick들이 표시되도록 한다.<br/>
7862
8207
  *
7863
- * @default 72
8208
+ * @default true
7864
8209
  */
7865
- stepPixels?: number;
8210
+ enableDecimals?: boolean;
7866
8211
  /**
8212
+ * {@page stepPixels}가 적용 중일 때,
8213
+ * step 간격을 계사하는데 사용되는 단위 배수 목록.<br/>
8214
+ * 최소/최대값을 기준으로 동적으로 목록을 리턴하는 콜백을 지정할 수도 있다.<br/>
8215
+ * 지정하지 않으면 {@page enableDecimals} 설정에 따라,
8216
+ * `[1, 2, 5, 10]` 또는 `[1, 2, 2.5, 5, 10]`이 사용된다.
8217
+ */
8218
+ stepMultiples?: number[];
8219
+ /**
8220
+ * 최대한 지정된 개수만큼 tick들이 생성되도록 한다.<br/>
8221
+ * 1보다 큰 값으로 지정해야 한다.
7867
8222
  */
7868
8223
  stepCount?: number;
7869
8224
  /**
7870
8225
  * 명시적으로 설정하는 setp 목록<br/>
8226
+ * 최소/최대값을 기준으로 동적으로 목록을 리턴하는 콜백을 지정할 수도 있다.<br/>
7871
8227
  * 양 끝을 NaN으로 지정하면 계산된 min/max로 설정된다.
7872
- * 이 목록이 설정되면 스텝 설정과 관련된 다른 속성들은 무시된다.<b/>
7873
- * {@page stepCallback}이 지정되면 이 속성은 무시된다.
7874
- *
8228
+ * 이 목록이나 콜백이 설정되면 tick 스텝 설정과 관련된 다른 속성들은 무시된다.<br/>
7875
8229
  */
7876
- steps?: number[];
8230
+ steps?: (number | Date)[] | ((args: StepCallbackArgs) => (number | Date)[]);
7877
8231
  /**
8232
+ * @deprecated {@page steps}에 지정할 수 있다.
8233
+ *
7878
8234
  * 명시적 step 목록을 리턴하는 callback<br/>
7879
8235
  * 양 끝을 NaN으로 지정하면 계산된 min/max로 설정된다.
7880
8236
  * 이 목록이 설정되면 스텝 설정과 관련된 다른 속성들은 무시된다.
@@ -7930,25 +8286,24 @@ type AxisLabelArrange = typeof _AxisLabelArrange[keyof typeof _AxisLabelArrange]
7930
8286
  */
7931
8287
  declare const _AxisLabelOverflow: {
7932
8288
  /**
7933
- * 넘치면 표시하지 않는다.
8289
+ * 넘치면 표시하지 않는다.<br/>
7934
8290
  *
7935
8291
  * @config
7936
8292
  */
7937
8293
  readonly HIDDEN: "hidden";
7938
8294
  /**
7939
- * 차트나 분할 경계를 넘어선 만큼 끌어당겨서 표시한다.<br/>
7940
- * 실제 표시 위치와 달라지므로 tick 반드시 표시해서 사용자에게 오차를 보여줘야 한다.
8295
+ * 차트나 분할 경계를 넘어서는 경우 이웃 라벨과 겹치지 않을 만큼 최대한 끌어 당겨 표시한다.<br/>
8296
+ * 실제 표시 위치와 달라지므로 tick 선을 반드시 표시해서 사용자에게 오차를 보여줘야 한다.
7941
8297
  *
7942
8298
  * @config
7943
8299
  */
7944
8300
  readonly PULL: "pull";
7945
8301
  /**
7946
- * 경계를 넘어선 만큼 끌어당겨서 표시한다.<br/>
7947
- * 실제 표시 위치와 달라지므로 tick을 반드시 표시해서 사용자에게 오차를 보여줘야 한다.
8302
+ * 원래 tick 위치에 그대로 표시한다.<br/>
7948
8303
  *
7949
8304
  * @config
7950
8305
  */
7951
- readonly FIT: "fit";
8306
+ readonly TICK: "tick";
7952
8307
  };
7953
8308
  /** @dummy */
7954
8309
  type AxisLabelOverflow = typeof _AxisLabelOverflow[keyof typeof _AxisLabelOverflow];
@@ -8080,13 +8435,13 @@ interface AxisLabelOptions extends IconedTextOptions {
8080
8435
  */
8081
8436
  lastStyle?: SVGStyleOrClass;
8082
8437
  /**
8083
- * 첫번째 tick 라벨이 차트나 분할 경계를 넘어갈 때 표시 방식.<br/>
8438
+ * 회전 없이 한 줄로 표시되는 첫번째 tick 라벨이 차트나 분할 경계를 넘어갈 때 표시 방식.<br/>
8084
8439
  *
8085
8440
  * @default 'pull'
8086
8441
  */
8087
8442
  firstOverflow?: AxisLabelOverflow;
8088
8443
  /**
8089
- * 마지막 tick 라벨이 차트나 분할 경계를 넘어갈 때 표시 방식.<br/>
8444
+ * 회전 없이 한 줄로 표시되는 마지막 tick 라벨이 차트나 분할 경계를 넘어갈 때 표시 방식.<br/>
8090
8445
  *
8091
8446
  * @default 'pull'
8092
8447
  */
@@ -8095,7 +8450,7 @@ interface AxisLabelOptions extends IconedTextOptions {
8095
8450
  * 차트나 분할 경계를 넘어가는 첫번째나 마지막 tick 라벨을 끌어 당겨서 표시할 때 이전 라벨과의 최소 간격.<br/>
8096
8451
  * 이 간격보다 작게 되면 표시하지 않는다.
8097
8452
  *
8098
- * @default 12
8453
+ * @default 2
8099
8454
  */
8100
8455
  overflowGap?: number;
8101
8456
  /**
@@ -8187,6 +8542,7 @@ interface AxisGuideLabelOptions extends IconedTextOptions {
8187
8542
  */
8188
8543
  offsetY?: number;
8189
8544
  }
8545
+ /** @dummy */
8190
8546
  type AxisGuideType = 'line' | 'range';
8191
8547
  /**
8192
8548
  * 선분이나 영역으로 축 위의 특정한 값(들)을 구분 표시한다.<br/>
@@ -8427,26 +8783,31 @@ interface CrosshairOptions extends ChartItemOptions {
8427
8783
  declare const _AxisPosition: {
8428
8784
  /**
8429
8785
  * 상대 축에 따라 위치를 조정한다.<br/>
8430
- * x축이 reversed이면 y축이 반대 쪽에 표시되고,
8786
+ * x축이 {@page config.base.axis#reversed}이면 y축이 반대 쪽에 표시되고,
8431
8787
  * y축이 reversed이면 x축이 반대 쪽에 표시된다.
8432
8788
  */
8433
8789
  readonly AUTO: "auto";
8434
8790
  /**
8435
8791
  * X축은 아래쪽에 수평으로, Y축은 왼쪽에 수직으로 표시된다.<br/>
8436
- * {@page op.ChartConfiguration#inverted}이면 Y축이 아래쪽에 수평으로, X축은 왼쪽에 수직으로 표시된다.
8792
+ * {@page config.#inverted}이면 Y축이 아래쪽에 수평으로, X축은 왼쪽에 수직으로 표시된다.
8437
8793
  *
8438
8794
  * @config
8439
8795
  */
8440
8796
  readonly NORMAL: "normal";
8441
8797
  /**
8442
8798
  * X축은 위쪽에 수평으로, Y축은 오른쪽에 수직으로 표시된다.<br/>
8443
- * {@page op.ChartConfiguration#inverted}이면 Y축이 위쪽에 수평으로, X축은 오른쪽에 수직으로 표시된다.
8799
+ * {@page config.#inverted}이면 Y축이 위쪽에 수평으로, X축은 오른쪽에 수직으로 표시된다.
8444
8800
  *
8445
8801
  * @config
8446
8802
  */
8447
8803
  readonly OPPOSITE: "opposite";
8448
8804
  /**
8805
+ * @private
8806
+ * @deprecated splite 모드로 대체
8807
+ *
8449
8808
  * 상대 축의 baseValue 지점에 표시된다.<br/>
8809
+ * 분할 모드 없이 x축을 좌우로 분할해서 표시할 때 사용할 수 있다.<br/>
8810
+ *
8450
8811
  * [주의] <br/>
8451
8812
  * 1. 축에 연결된 시리즈들이 BarSeries 계열일 때만 가능하다.<br/>
8452
8813
  * 2. 차트의 X축 하나에만 적용할 수 있다. 두번째로 지정된 축의 속성은 'normal'로 적용된다.<br/>
@@ -8457,7 +8818,9 @@ declare const _AxisPosition: {
8457
8818
  */
8458
8819
  readonly BASE: "base";
8459
8820
  /**
8460
- * Y축이고, 축이 연결되는 body가 분할 상태일 때, 중간 분할 위치에 표시한다.
8821
+ * split 모드일 때, 중간 분할 위치에 표시한다.<br/>
8822
+ * 마자믹 pane이 아니면 'opposite'와 동일하고,
8823
+ * 마지막 pane이면 'normal'과 동일하다.
8461
8824
  */
8462
8825
  readonly BETWEEN: "between";
8463
8826
  };
@@ -8500,13 +8863,30 @@ interface AxisScrollBarOptions extends AxisItemOptions {
8500
8863
  */
8501
8864
  gapFar?: number;
8502
8865
  }
8866
+ /** @dummy */
8503
8867
  type AxisType = 'category' | 'linear' | 'log' | 'time';
8504
8868
  /**
8505
8869
  * 축 설정 옵션 기반(base).<br/>
8506
8870
  *
8871
+ * {@page type}이 지정되지 않으면,
8872
+ *
8873
+ * - {@page config.xAxis.category#categories}가 설정되면 'category'
8874
+ * - x축이고 첫번째 시리즈가 category축에 연결 가능할 때 'category', 아니면 'linear'
8875
+ * - y축이면 첫번째 시리즈의 기본 y축 타입(대부분 'linear'), 아니면 'linear'
8876
+ *
8877
+ * 축으로 자동 설정된다.<br/>
8878
+ *
8507
8879
  * @config chart.axis[base]
8508
8880
  */
8509
8881
  interface AxisOptions extends ChartItemOptions {
8882
+ /**
8883
+ * 값을 지정하지 않으면 연결된 시리즈가 있는 경우에 표시된다.<br/>
8884
+ * 명시적 boolean값을 지정하면 그 설정에 따라 표시 여부가 결정된다.
8885
+ * 또, 표시 여부와 상관없이, 이 축에 연결된 시리즈들은 이 축의 범위에 맞게 표시된다.
8886
+ *
8887
+ * @default undefined
8888
+ */
8889
+ visible?: boolean;
8510
8890
  /**
8511
8891
  * 축 종류를 지정한다.<br/>
8512
8892
  * 이 속성값이 지정되지 않은 경우,
@@ -8520,32 +8900,39 @@ interface AxisOptions extends ChartItemOptions {
8520
8900
  type?: AxisType;
8521
8901
  /**
8522
8902
  * 축 이름.<br/>
8903
+ * 이름을 지정하지 않으면 '-axis-{index + 1}' 형식으로 자동 지정된다.
8904
+ * 즉, 첫번째 축이면 '-axis-1'이 된다.
8523
8905
  */
8524
8906
  name?: string;
8525
8907
  /**
8526
8908
  * 축 title 설정 옵션.<br/>
8909
+ * 문자열로 지정하면 타이틀의 {@page visible} 속성을 지정한 것과 동일하다.
8527
8910
  */
8528
8911
  title?: AxisTitleOptions | string;
8529
8912
  /**
8530
8913
  * 축 선 설정 옵션.<br/>
8914
+ * boolean 값으로 지정하면 {@page visible} 속성을,
8915
+ * 문자열로 지정하면 {@page style}.stroke를 지정한 것과 동일하다.
8531
8916
  */
8532
8917
  line?: AxisLineOptions | boolean | string;
8533
8918
  /**
8534
8919
  * 부채꼴 polar 좌표계의 X 축일 때 원호의 양 끝과 중심에 연결되는 선분들의 설정모델.<br/>
8535
8920
  * {@page config.xAxis.category#startAngle startAngle}, {@page config.xAxis.category#totalAngle totalAngle}을 참조한다.
8536
- *
8537
8921
  */
8538
8922
  sectorLine?: AxisSectorLineOptions | boolean;
8539
8923
  /**
8540
8924
  * tick 설정 옵션.<br/>
8925
+ * boolean 값으로 지정하면 {@page visible} 속성을 지정한 것과 동일하다.
8541
8926
  */
8542
8927
  tick?: AxisTickOptions | boolean;
8543
8928
  /**
8544
8929
  * label 설정 옵션.<br/>
8930
+ * boolean 값으로 지정하면 {@page visible} 속성을 지정한 것과 동일하다.
8545
8931
  */
8546
8932
  label?: AxisLabelOptions | boolean;
8547
8933
  /**
8548
8934
  * visible 기본값이 undefined이다.<br/>
8935
+ * boolean 값으로 지정하면 {@page visible} 속성을 지정한 것과 동일하다.
8549
8936
  * visible이 undefined나 null로 지정되면, 축 위치에 따라 visible 여부가 결정된다.
8550
8937
  */
8551
8938
  grid?: AxisGridOptions | boolean;
@@ -8557,10 +8944,12 @@ interface AxisOptions extends ChartItemOptions {
8557
8944
  guide?: AxisGuideOptions[];
8558
8945
  /**
8559
8946
  * 직선 또는 bar 형태로 축 위의 마우스 위치를 표시하는 옵션.<br/>
8947
+ * boolean 값으로 지정하면 {@page visible} 속성을 지정한 것과 동일하다.
8560
8948
  */
8561
8949
  crosshair?: CrosshairOptions | boolean;
8562
8950
  /**
8563
8951
  * zoom된 x축에 표시할 수 있는 스크롤바 옵션.<br/>
8952
+ * boolean 값으로 지정하면 {@page visible} 속성을 지정한 것과 동일하다.<br/>
8564
8953
  * y축은 scrollBar가 표시되지 않는다.
8565
8954
  * // TODO #fiddle axis/scrollbar Axis ScrollBar
8566
8955
  */
@@ -8593,8 +8982,8 @@ interface AxisOptions extends ChartItemOptions {
8593
8982
  */
8594
8983
  totalAngle?: number;
8595
8984
  /**
8596
- * 표시 위치.
8597
- * 기본적으로 상대 축의 원점 쪽에 표시된다.
8985
+ * 표시 위치.<br/>
8986
+ * 기본적으로 상대 축의 시작값 쪽에 표시된다.
8598
8987
  *
8599
8988
  * @default 'normal'
8600
8989
  */
@@ -8702,6 +9091,26 @@ interface CategoryAxisTickOptions extends AxisTickOptions {
8702
9091
  */
8703
9092
  step?: number;
8704
9093
  }
9094
+ interface CategoryAxisLabelOptions extends AxisLabelOptions {
9095
+ /**
9096
+ * {@page fillToCategory}가 true이고 수직 축 일 때 label의 수평 정렬.<br/>
9097
+ *
9098
+ * @default 'center'
9099
+ */
9100
+ align?: Align;
9101
+ /**
9102
+ * {@page fillToCategory}가 true이고 수직 축 일 때 label의 수직 정렬.<br/>
9103
+ *
9104
+ * @default 'middle'
9105
+ */
9106
+ verticalAlign?: VerticalAlign;
9107
+ /**
9108
+ * effect가 'background'로 설정되었을 때, background 크기를 라벨 영역 크기에 맞게 채운다.<br/>
9109
+ *
9110
+ * @default false
9111
+ */
9112
+ fillToCategory?: boolean;
9113
+ }
8705
9114
  declare const CategoryAxisType = "category";
8706
9115
  /**
8707
9116
  * 지정된 카테고리 개수로 축을 분할해서 각 카테고리에 연결된 데이터포인트들이 표시되게 한다.<br/>
@@ -8710,11 +9119,17 @@ declare const CategoryAxisType = "category";
8710
9119
  * 기본적으로 개별 카테고리의 너비(간격)나 카테고리들 사이의 순서는 의미가 없다.
8711
9120
  * 즉, 카테고리가 위치한 축 값(숫자)이 data로서는 별 의미가 없는 경우에 사용한다.
8712
9121
  * 축 상에 데이터포인트가 존재하지 않는 영역이 존재하게 된다면 선형 축을 고려해야 한다.
8713
- * (데이터포인트가 없은 영역을 자동으로 없애지는 않는다.)<br/>
9122
+ * (데이터포인트가 없는 영역을 자동으로 없애지는 않는다.)<br/>
8714
9123
  * 반대로, 선형(linear, time, log) 축들은 축 값이 의미있는 data이므로,
8715
9124
  * 축 값은 연속되고 데이터포인트가 없는 영역 또한 그 자체로 의미가 있다.<br/>
8716
9125
  * // TODO: 그렇기 때문에, 카테고리를 정렬(sort)할 수 있다. (ex. 첫번째 시리즈 y값을 기준으로...). 필터링?
8717
- * 또, 축 label에 카테고리를 대표하는 이름을 표시할 필요한 경우 먼저 카테고리 축을 고려해야 한다.
9126
+ * 또, 축 label에 카테고리를 대표하는 이름을 표시할 필요한 경우 먼저 카테고리 축을 고려해야 한다.<br/>
9127
+ * {@page categories}가 명시적으로 지정되지 않은 경우,
9128
+ * 연결된 시리즈의 데이터포인트들의 'x' 값들 중 문자열인 것들을 모아 순서대로 구성하는데,
9129
+ * 이렇게 지정하는 경우 중복되지 않도록 빠짐없이 설정해야 한다.
9130
+ * 또는, {@page categorySeries}와 {@page categoryField}를 지정해서 카테고리로 사용할 목록을 수집할 수도 있다.<br/>
9131
+ * 중복없는 문자열 배열로 카테고리 목록이 구성되므로 시리즈의 {@page data} 항목 순서와 불일치한 상태로 표시된다.
9132
+ * 문자열이 설정되지 않은 데이터포인트의 xValue값은 숫자값이 아니면 {@page xStart}와 {@page xStep}을 기준으로 순서대로 설정된다.
8718
9133
  *
8719
9134
  * //1. categories 속성으로 카테고리 목록을 구성한다.
8720
9135
  * //2. 이 축에 연결된 시리즈들에 포함된 data point들의 문자열인 값들, 혹은 categoryField에 해당하는 값들을 수집한다.
@@ -8729,23 +9144,37 @@ declare const CategoryAxisType = "category";
8729
9144
  * @config chart.yAxis[type=category]
8730
9145
  */
8731
9146
  interface CategoryAxisOptions extends AxisOptions {
9147
+ /** @dummy */
8732
9148
  type?: typeof CategoryAxisType;
8733
9149
  /**
8734
9150
  * @override
8735
9151
  */
8736
9152
  tick?: CategoryAxisTickOptions | boolean;
8737
9153
  /**
8738
- * Category 목록을 수집하는 시리즈.<br/>
9154
+ * @override
9155
+ */
9156
+ label?: CategoryAxisLabelOptions | boolean;
9157
+ /**
9158
+ * category 목록을 수집하는 시리즈.<br/>
8739
9159
  * 지정하지 않으면 모든 시리즈에서 카테고리를 수집한다.
8740
- *
8741
9160
  */
8742
9161
  categorySeries?: string;
8743
9162
  /**
8744
9163
  * 카테고리로 사용되는 dataPoint 속성.<br/>
9164
+ * 각 데이터포인트의 이 속성 값 중 문자열값들이 연결된 카테고리 축의 category 목록으로 사용된다.
9165
+ * field가 둘 이상일때는 마지막 필드 값이 문자열이어야 한다.
9166
+ * 또, x 값 대신 이 속성 값에 해당하는 categroy 값이 데이터포인트의 x값이 된다.<br/>
9167
+ * 축 tick에는 마지막 필드로 지정된 문자열이 표시된다.<br/>
8745
9168
  * {@page categories}가 지정되면 이 속성은 무시된다.
9169
+ */
9170
+ categoryField?: (string | number) | (string | number)[];
9171
+ /**
9172
+ * {@page categoryField}가 배열일 경우, 마지막 필드 값을 구분하기 위해 사용하는 내부 구분 자이다.
9173
+ * 데이터값에 없는 문자열로 지정해야 라벨이 올바르게 표시된다.<br/>
8746
9174
  *
9175
+ * @default '+'
8747
9176
  */
8748
- categoryField?: string | number;
9177
+ categorySeparator?: string;
8749
9178
  /**
8750
9179
  * 명시적으로 지정하는 카테고리 목록.<br/>
8751
9180
  * 문자열로 카테고리 항목을 지정하거나,
@@ -8756,39 +9185,42 @@ interface CategoryAxisOptions extends AxisOptions {
8756
9185
  * 이 목록을 지정하지 않으면 축에 연결된 시리즈들로부터 카테고리 목록을 자동 생성한다.
8757
9186
  * 하지만 시리즈들이 모두 사라지는 경우 카테고리 목록 역시 사라지므로,
8758
9187
  * 기대하는 카테고리 목록을 고정 표시하려는 경우 이 목록을 설정하는 것이 좋다.<br/>
8759
- *
8760
9188
  */
8761
9189
  categories?: (string | object)[];
8762
9190
  /**
8763
- * weigth 필드를 제공하는 시리즈.
9191
+ * {@page weightField}와 함께 각 카테고리의 weight제공하는 시리즈.<br/>
9192
+ * 이 속성에 해당하는 시리즈가 없는 경우 {@page categorySeries}로 지정된 시리즈를 참조한다.
9193
+ * 설정된 category 목록과 순서가 일치하도록 설정해야 한다.
8764
9194
  */
8765
9195
  weightSeries?: string;
8766
9196
  /**
8767
- * weightSeries data에서 weight를 제공하는 필드.<br/>
9197
+ * {@page weightSeries} data에서 weight를 제공하는 필드.<br/>
8768
9198
  */
8769
9199
  weightField?: number | string;
8770
9200
  /**
8771
- * 축의 카테고리 위치 전후에 여백으로 추가되는 크기.<br/>
8772
- * 각각 시작/끝 카테고리에 대한 상대적 크기로 지정한다.
9201
+ * 시리즈 x값들로 부터 카테고리를 구성할 때, 연속된 동일 x값의 개수로 weight로 설정한다.<br/>
9202
+ */
9203
+ weightByFrequency?: boolean;
9204
+ /**
9205
+ * 축의 양 끝 카테고리 위치 전후에 여백으로 추가되는 크기나 크기 목록.<br/>
9206
+ * 각각 시작/끝 카테고리에 대한 상대적 크기로 지정하며
8773
9207
  * {@page minPadding}, {@page maxPadding}으로 별도 지정할 수 있다.
8774
9208
  *
8775
9209
  * @default 0
8776
9210
  */
8777
- padding?: number;
9211
+ padding?: number | [number, number][];
8778
9212
  /**
8779
9213
  * 축의 시작 카테고리 위치 이 전에 여백으로 추가되는 크기.<br/>
8780
9214
  * 카테고리 기본 너비(1)에 대한 상대적 크기로 지정한다.
8781
9215
  * {@page padding} 속성으로 양끝 padding을 한꺼번에 지정할 수 있다.
8782
- *
8783
9216
  */
8784
- minPadding?: number;
9217
+ minPadding?: number | [number, number][];
8785
9218
  /**
8786
9219
  * 축의 끝 카테고리 위치 이 후에 여백으로 추가되는 크기.<br/>
8787
9220
  * 카테고리 기본 너비(1)에 대한 상대적 크기로 지정한다.
8788
9221
  * {@page padding} 속성으로 양끝 padding을 한꺼번에 지정할 수 있다.
8789
- *
8790
9222
  */
8791
- maxPadding?: number;
9223
+ maxPadding?: number | [number, number][];
8792
9224
  /**
8793
9225
  * 각 카테고리의 양 끝에 추가되는 여백의 카테고리에 너비에 대한 상대적 크기.<br/>
8794
9226
  * 0 ~ 0.5 사이의 값으로 지정한다.
@@ -8810,6 +9242,10 @@ interface CategoryAxisOptions extends AxisOptions {
8810
9242
  * 기본적으로 표시되지 않는다.
8811
9243
  */
8812
9244
  interface AxisBaseLineOptions extends AxisLineOptions {
9245
+ /**
9246
+ * @default false
9247
+ */
9248
+ visible?: boolean;
8813
9249
  }
8814
9250
  /**
8815
9251
  * 연속축 break 설정 모델.<br/>
@@ -8879,26 +9315,25 @@ interface ContinuousAxisOptions extends AxisOptions {
8879
9315
  /**
8880
9316
  * base value 위치에 표시되는 선분 설정 모델.<br/>
8881
9317
  * 기본적으로 표시되지 않는다.
8882
- *
8883
9318
  */
8884
9319
  baseLine?: AxisBaseLineOptions;
8885
9320
  /**
8886
9321
  * @override
8887
9322
  *
8888
- * 명시적으로 지정하는 최소값.\
8889
- * 축에 연결된 data point들의 값으로 계산된 최소값보다 이 속성 값이 작으면 대신 이 값이 축의 최소값이 되고,
8890
- * {@page minPadding} 무시된다.
8891
- * 계산값이 더 작으면 이 속성은 무시된다.\
9323
+ * 명시적으로 지정하는 최소값.<br/>
9324
+ * 축에 연결된 data point들의 값으로 계산된 최소값보다 이 속성 값이 작으면 대신 이 값이 축의 최소값이 된다.
9325
+ * padding이 적용되므로 이 값에 정확이 맞추고 싶은 경우 {@page minPadding} 0으로 설정한다.
9326
+ * 계산 최소값이 더 작으면 이 속성은 무시된다.<br/>
8892
9327
  * 계산값과 무관하게 최소값을 지정하려면 {@page strictMin}을 사용한다.
8893
9328
  */
8894
9329
  minValue?: number;
8895
9330
  /**
8896
9331
  * @override
8897
9332
  *
8898
- * 명시적으로 지정하는 최대값.\
8899
- * 축에 연결된 data point들의 값으로 계산된 최대값보다 이 속성 값이 크면 대신 이 값이 축의 최대값이 되고,
8900
- * {@page maxPadding} 무시된다.
8901
- * 계산값이 더 크면 이 속성은 무시된다.\
9333
+ * 명시적으로 지정하는 최대값.<br/>
9334
+ * 축에 연결된 data point들의 값으로 계산된 최대값보다 이 속성 값이 크면 대신 이 값이 축의 최대값이 된다.
9335
+ * padding이 적용되므로 이 값에 정확이 맞추고 싶은 경우 {@page maxPadding} 0으로 설정한다.
9336
+ * 계산 최대값이 더 크면 이 속성은 무시된다.\
8902
9337
  * 계산값과 무관하게 최대값을 지정하려면 {@page strictMax}을 사용한다.
8903
9338
  */
8904
9339
  maxValue?: number;
@@ -8909,57 +9344,68 @@ interface ContinuousAxisOptions extends AxisOptions {
8909
9344
  */
8910
9345
  nullable?: boolean;
8911
9346
  /**
8912
- * 시리즈에 baseValue가 지정되지 않은 경우 대신 사용되는 기본값.\
8913
- * // TODO: 또, 선을 표시하는 기준점(inner일 때)이 된다.
9347
+ * y축 기준값이 필요한 시리즈들({@page config.series.bar 'bar'} 계열,
9348
+ * {@page config.series.area 'area'})의 {@page config.series.bar#baseValue}가
9349
+ * 지정되지 않은 경우 대신 적용되는 기본값.<br/>
9350
+ * {@page baseLine}은 이 설정값에 해당되는 위치에 표시된다.
8914
9351
  *
9352
+ * @default 0
8915
9353
  */
8916
9354
  baseValue?: number;
8917
9355
  /**
8918
- * {@page minPadding}, {@page maxPadding}이 설정되지 않았을 때 적용되는 기본값이다.
8919
- *
9356
+ * {@page minPadding}, {@page maxPadding}이 설정되지 않았을 때 적용되는 기본값이다.<br/>
9357
+ * [plot크기, padding] 목록으로 지정한다. 단일 값으로 지정하면 [[Infiniy, padding]]으로 설정된다.
9358
+ * plot 영역의 크기가 첫번째 값 이하면 두번째로 지정한 값만큼 padding을 적용한다.<br/>
9359
+ * 지정하지 않거나 잘못 지정하면 아래 목록이 기본 적용된다.<br/>
9360
+ * `[[170, 0.2], [340, 0.1], [700, 0.05], [Infinity, 0.03]]`<br/>
9361
+ * 또, 숫자와 'px'로 끝나는 문자열로 지정하면 위 설정을 무시하고,
9362
+ * 적어도 지정한 pixel만큼 여백이 생길 수 있도록 조정된다.<br/>
9363
+ * 시리즈 별로 설정할 수 있는 {@page config.series#paddingRate}가 추가로 적용된다.
8920
9364
  */
8921
- padding?: number;
9365
+ padding?: number | [number, number][] | string;
8922
9366
  /**
8923
- * 첫번째 tick 앞쪽에 추가되는 최소 여백을 길이에 대한 상대값으로 지정한다.
9367
+ * 첫번째 tick 앞쪽에 추가되는 최소 여백을 전체 범위에 대한 비율로 지정한다.<br/>
8924
9368
  * 이 값을 지정하지 않으면 {@page padding}에 지정된 값을 따른다.
8925
9369
  * {@page startFit}이 {@page AxitFit.TICK}일 때,
8926
9370
  * data point의 최소값과 첫번째 tick 사이에 이미 그 이상의 간격이 존재한다면 이 속성은 무시된다.
8927
- * {@page strictMin}가 지정되거나, {@page minValue}가 계산된 최소값보다 작은 경우에도 이 속성은 무시된다.
8928
- *
9371
+ * {@page strictMin}가 지정되거나, {@page minValue}가 계산된 최소값보다 작은 경우에도 이 속성은 무시된다.<br/>
9372
+ * 속성값을 지정하는 방식은 {@page padding}을 참조한다.
8929
9373
  */
8930
- minPadding?: number;
9374
+ minPadding?: number | [number, number][] | string;
8931
9375
  /**
8932
- * 마지막 tick 뒤쪽에 추가되는 최소 여백을 길이에 대한 상대값으로 지정한다.
9376
+ * 마지막 tick 뒤쪽에 추가되는 최소 여백을 전체 범위에 대한 비율로 지정한다.<br/>
8933
9377
  * 이 값을 지정하지 않으면 {@page padding}에 지정된 값을 따른다.
8934
9378
  * {@page endFit}이 {@page endFit tick}일 때,
8935
9379
  * data point의 최대값과 마지막 tick 사이에 이미 그 이상의 간격이 존재한다면 이 속성은 무시된다.
8936
9380
  * {@page strictMax}가 지정되거나, {@page maxValue}가 계산된 최대값보다 큰 경우에도 이 속성은 무시된다.
8937
- *
9381
+ * 속성값을 지정하는 방식은 {@page padding}을 참조한다.
8938
9382
  */
8939
- maxPadding?: number;
9383
+ maxPadding?: number | [number, number][] | string;
8940
9384
  /**
8941
- * 무조건 적용되는 최소값.
9385
+ * 무조건 적용되는 최소값.<br/>
8942
9386
  * 즉, 이 값보다 작은 값을 갖는 시리즈 포인트들은 표시되지 않는다.
8943
- * minPadding도 적용되지 않는다.
8944
- *
9387
+ * {@page minPadding}도 적용되지 않는다.<br/>
9388
+ * 숫자값이나, '%'로 끝나는 문자열로 설정해서 계산된 최소값에 뺄 값을 전체 값 범위(max - min)에 대한 비율로 지정할 수 있다.
8945
9389
  */
8946
- strictMin?: number;
9390
+ strictMin?: number | string;
8947
9391
  /**
8948
9392
  * 무조건 적용되는 최대값.
8949
9393
  * 즉, 이 값보다 큰 값을 갖는 시리즈 포인트들은 표시되지 않는다.
8950
- * maxPadding도 적용되지 않는다.
8951
- *
9394
+ * {@page maxPadding}도 적용되지 않는다.<br/>
9395
+ * 숫자값이나, '%'로 끝나는 문자열로 설정해서 계산된 최대값에 더할 값을 전체 값 범위(max - min)에 대한 비율로 지정할 수 있다.
8952
9396
  */
8953
- strictMax?: number;
9397
+ strictMax?: number | string;
8954
9398
  /**
8955
- * 축 시작 위치에 tick 표시 여부.
8956
- * {@page strictMin}이 설정되면 'value'로 적용된다.
9399
+ * 축 시작 위치에 tick 표시 여부.<br/>
9400
+ * paddingd이나 base 설정 등은 반영된 상태에서 적용된다.
9401
+ * {@page strictMin}가 설정되면 'value'로 적용된다.
8957
9402
  *
8958
9403
  * @default 'default'
8959
9404
  */
8960
9405
  startFit?: AxisFit;
8961
9406
  /**
8962
- * 축 끝 위치에 tick 표시 여부.
9407
+ * 축 끝 위치에 tick 표시 여부.<br/>
9408
+ * paddingd이나 base 설정 등은 반영된 상태에서 적용된다.
8963
9409
  * {@page strictMax}가 설정되면 무시되고 'value'로 적용된다.
8964
9410
  *
8965
9411
  * @default 'default'
@@ -9010,8 +9456,20 @@ interface LinearAxisOptions extends ContinuousAxisOptions {
9010
9456
  }
9011
9457
  /**
9012
9458
  * Log축 틱 설정 모델.<br/>
9459
+ * 현재, log10 기준으로 계산한다.
9460
+ * {@page stepInterval}, {@page stepPixels}는 log10을 적용한 값으로 지정한다.
9013
9461
  */
9014
9462
  interface LogAxisTickOptions extends ContinuousAxisTickOptions {
9463
+ /**
9464
+ * @append
9465
+ * log10을 적용한 값으로 지정한다. // #141
9466
+ */
9467
+ stepInterval?: number;
9468
+ /**
9469
+ * @append
9470
+ * log10을 적용한 값들로 지정해야 한다.
9471
+ */
9472
+ steps?: (number | Date)[] | ((args: StepCallbackArgs) => (number | Date)[]);
9015
9473
  /**
9016
9474
  * 소수점을 갖는 step들을 역로그된 값이 최대한 정수가 되는 위치로 재배치한다.
9017
9475
  *
@@ -9110,19 +9568,18 @@ type AxisOptionsType = CategoryAxisOptions | LinearAxisOptions | LogAxisOptions
9110
9568
  interface GaugeBaseOptions extends ChartItemOptions {
9111
9569
  type?: GaugeType;
9112
9570
  /**
9113
- * 게이지 이름.
9571
+ * 게이지 이름.<br/>
9114
9572
  * 동적으로 게이지를 다루기 위해서는 반드시 지정해야 한다.
9115
- *
9116
9573
  */
9117
9574
  name?: string;
9118
9575
  /**
9119
- * 분할 모드일 때 게이지가 표시될 pane의 수직 index.
9120
- *
9576
+ * 분할 모드일 때 게이지가 표시될 pane의 수직 index.<br/>
9577
+ * 지정하지 않으면 0.
9121
9578
  */
9122
9579
  row?: number;
9123
9580
  /**
9124
- * 분할 모드일 때 게이지가 표시될 pane의 수평 index.
9125
- *
9581
+ * 분할 모드일 때 게이지가 표시될 pane의 수평 index.<br/>
9582
+ * 지정하지 않으면 0.
9126
9583
  */
9127
9584
  col?: number;
9128
9585
  /**
@@ -10400,9 +10857,9 @@ interface ChartConfiguration {
10400
10857
  declare abstract class GaugeBase<OP extends GaugeBaseOptions = GaugeBaseOptions> extends Widget<OP> {
10401
10858
  static readonly type: string;
10402
10859
  static defaults: GaugeBaseOptions;
10403
- _row: number;
10404
- _col: number;
10405
10860
  private _name;
10861
+ private _row;
10862
+ private _col;
10406
10863
  index: number;
10407
10864
  private _sizeDim;
10408
10865
  private _widthDim;
@@ -10413,13 +10870,15 @@ declare abstract class GaugeBase<OP extends GaugeBaseOptions = GaugeBaseOptions>
10413
10870
  private _bottomDim;
10414
10871
  _type(): string;
10415
10872
  get name(): string;
10873
+ get row(): number;
10874
+ get col(): number;
10416
10875
  getSize(width: number, height: number): Size;
10417
10876
  getLeft(doamin: number): number;
10418
10877
  getRight(doamin: number): number;
10419
10878
  getTop(doamin: number): number;
10420
10879
  getBottom(doamin: number): number;
10421
10880
  _load(source: any): OP;
10422
- protected _doApply(options: GaugeBaseOptions): void;
10881
+ protected _doApply(options: OP): void;
10423
10882
  }
10424
10883
  declare abstract class GaugeItem<OP extends ChartItemOptions> extends ChartItem<OP> {
10425
10884
  constructor(gauge: GaugeBase);
@@ -10456,7 +10915,7 @@ declare abstract class GaugeGroup<T extends ValueGauge = ValueGauge, OP extends
10456
10915
  get(index: number): T;
10457
10916
  getVisible(index: number): T;
10458
10917
  calcedMinMax(): IMinMax;
10459
- protected _doApply(options: GaugeBaseOptions): void;
10918
+ protected _doApply(options: OP): void;
10460
10919
  protected _doSaveArray(prop: string, value: any[]): any[];
10461
10920
  _prepareRender(): void;
10462
10921
  private $_loadGauges;
@@ -10700,7 +11159,7 @@ declare abstract class CircularGauge<OP extends CircularGaugeOptions = CircularG
10700
11159
  };
10701
11160
  getExtents(gaugeSize: number): ICircularGaugeExtents;
10702
11161
  labelVisible(): boolean;
10703
- protected _doApply(options: CircularGaugeOptions): void;
11162
+ protected _doApply(options: OP): void;
10704
11163
  setGroup(group: GaugeGroup, index: number): void;
10705
11164
  protected _doPrepareRender(chart: IChart): void;
10706
11165
  }
@@ -10719,7 +11178,7 @@ declare abstract class CircularGaugeGroup<T extends CircularGauge = CircularGaug
10719
11178
  */
10720
11179
  get label(): CircularGaugeLabel;
10721
11180
  setChildExtents(exts: ICircularGaugeExtents): void;
10722
- protected _doApply(options: CircularGaugeGroupOptions): void;
11181
+ protected _doApply(options: OP): void;
10723
11182
  }
10724
11183
 
10725
11184
  declare class ZoomButton extends ChartItem<ZoomButtonOptions> {
@@ -10760,9 +11219,6 @@ interface IPolar {
10760
11219
  */
10761
11220
  declare class Body<OP extends BodyOptions = BodyOptions> extends ChartItem<OP> implements IAnnotationOwner {
10762
11221
  static defaults: BodyOptions;
10763
- private _radius;
10764
- private _centerX;
10765
- private _centerY;
10766
11222
  private _anns;
10767
11223
  private _image;
10768
11224
  private _zoomButton;
@@ -10782,7 +11238,6 @@ declare class Body<OP extends BodyOptions = BodyOptions> extends ChartItem<OP> i
10782
11238
  get image(): BackgroundImage;
10783
11239
  get emptyView(): EmptyView;
10784
11240
  get zoomButton(): ZoomButton;
10785
- base(): Body;
10786
11241
  canZoom(): boolean;
10787
11242
  getRadius(width: number, height: number): number;
10788
11243
  setPolar(width: number, height: number): Body;
@@ -10791,7 +11246,7 @@ declare class Body<OP extends BodyOptions = BodyOptions> extends ChartItem<OP> i
10791
11246
  getAnnotations(): Annotation[];
10792
11247
  getAnnotation(name: string): Annotation;
10793
11248
  contains(obj: GaugeBase | Series): boolean;
10794
- protected _doApply(options: BodyOptions): void;
11249
+ protected _doApply(op: OP): void;
10795
11250
  protected _doPrepareRender(chart: IChart): void;
10796
11251
  }
10797
11252
 
@@ -10909,8 +11364,11 @@ declare class Subtitle extends Title<SubtitleOptions> {
10909
11364
  * @internal
10910
11365
  */
10911
11366
  interface ISplit extends ChartItem<SplitOptions> {
10912
- getAnnotation(name: string): Annotation;
11367
+ count: number;
11368
+ getBodyAnnotation(name: string): Annotation;
10913
11369
  prepareRender(xAxes: AxisCollection, yAxes: AxisCollection): void;
11370
+ getAxisOf(annoation: Annotation, isX: boolean): IAxis;
11371
+ isValidAxis(axis: IAxis): boolean;
10914
11372
  }
10915
11373
  interface IChart {
10916
11374
  wrapper: object;
@@ -10931,6 +11389,8 @@ interface IChart {
10931
11389
  _body: Body;
10932
11390
  _split: ISplit;
10933
11391
  _seriesIndex: number;
11392
+ _width: number;
11393
+ _height: number;
10934
11394
  _createChart(config: any): IChart;
10935
11395
  loadBase(source: any, model: string, type: string): any;
10936
11396
  assignTemplates(target: any): any;
@@ -10954,8 +11414,11 @@ interface IChart {
10954
11414
  _getAnnotationType(type: string): any;
10955
11415
  _getSeries(): PlottingItemCollection;
10956
11416
  _getGauges(): GaugeCollection;
11417
+ _getAnnotations(): AnnotationCollection;
10957
11418
  _getXAxes(): AxisCollection;
10958
11419
  _getYAxes(): AxisCollection;
11420
+ _getXAxesAt(col: number, visibleOnly: boolean): Axis[];
11421
+ _getYAxesAt(row: number, visibleOnly: boolean): Axis[];
10959
11422
  getAxesGap(): number;
10960
11423
  _connectSeries(series: IPlottingItem, isX: boolean): Axis;
10961
11424
  _getLegendSources(): ILegendSource[];
@@ -10968,6 +11431,8 @@ interface IChart {
10968
11431
  setParam(param: string, value: any, redraw?: boolean): void;
10969
11432
  _dataChanged(): void;
10970
11433
  _isDataChanged(): boolean;
11434
+ getAxisOf(annotation: Annotation, isX: boolean): IAxis;
11435
+ isValidAxis(axis: IAxis): boolean;
10971
11436
  }
10972
11437
  /**
10973
11438
  * 차트 제작 주체 등을 표시하는 영역에 대한 모델.<br/>
@@ -11016,9 +11481,7 @@ declare enum SectionDir {
11016
11481
  LEFT = "left",
11017
11482
  TOP = "top",
11018
11483
  BOTTOM = "bottom",
11019
- RIGHT = "right",
11020
- CENTER = "center",
11021
- MIDDLE = "middle"
11484
+ RIGHT = "right"
11022
11485
  }
11023
11486
  /**
11024
11487
  * @internal
@@ -11051,6 +11514,8 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
11051
11514
  _annotations: AnnotationCollection;
11052
11515
  _navigator: SeriesNavigator;
11053
11516
  _exporter: Exporter;
11517
+ _width: number;
11518
+ _height: number;
11054
11519
  private _params;
11055
11520
  private _inverted;
11056
11521
  private _splitted;
@@ -11065,6 +11530,8 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
11065
11530
  _createChart(config: any): IChart;
11066
11531
  animatable(): boolean;
11067
11532
  loadAnimatable(): boolean;
11533
+ getAxisOf(annotation: Annotation, isX: boolean): IAxis;
11534
+ isValidAxis(axis: IAxis): boolean;
11068
11535
  getTooltipContext(scope: TooltipScope, series: ISeries, point: DataPoint): ITooltipContext;
11069
11536
  get chart(): IChart;
11070
11537
  anchorByName(name: string): ChartItem;
@@ -11093,6 +11560,8 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
11093
11560
  _getSeries(): PlottingItemCollection;
11094
11561
  /** @internal*/
11095
11562
  _getGauges(): GaugeCollection;
11563
+ /** @internal */
11564
+ _getAnnotations(): AnnotationCollection;
11096
11565
  /** @internal*/
11097
11566
  _getXAxes(): AxisCollection;
11098
11567
  /** @internal*/
@@ -11104,6 +11573,8 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
11104
11573
  isInverted(): boolean;
11105
11574
  isSplitted(): boolean;
11106
11575
  isEmpty(visibleOnly: boolean): boolean;
11576
+ _getXAxesAt(col: number, visibleOnly: boolean): Axis[];
11577
+ _getYAxesAt(row: number, visibleOnly: boolean): Axis[];
11107
11578
  seriesByName(series: string): Series;
11108
11579
  seriesByType(type: string): Series | SeriesGroup;
11109
11580
  seriesAt(index: number): Series | SeriesGroup;
@@ -11133,7 +11604,7 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
11133
11604
  /** @internal */
11134
11605
  _isDataChanged(): boolean;
11135
11606
  /** @internal */
11136
- _prepareRender(): void;
11607
+ _prepareRender(): this;
11137
11608
  afterRender(): void;
11138
11609
  layoutAxes(width: number, height: number, inverted: boolean, phase: number): void;
11139
11610
  private $_calcAxesPoints;
@@ -11177,16 +11648,16 @@ declare class ChartObject extends EventProvider<IChartEventListener> implements
11177
11648
  * {@page guide.annotations Annotation 개요} 페이지를 참조한다.
11178
11649
  */
11179
11650
  declare abstract class Annotation<OP extends AnnotationOptions = AnnotationOptions> extends ChartItem<OP> {
11180
- inBody: boolean;
11651
+ body: object;
11181
11652
  static readonly type: string;
11182
11653
  static register(...clses: typeof Annotation<AnnotationOptions>[]): void;
11183
11654
  static defaults: AnnotationOptions;
11184
- private _width;
11185
- private _height;
11186
11655
  private _offsetX;
11187
11656
  private _offsetY;
11188
11657
  index: number;
11189
11658
  private _name;
11659
+ private _row;
11660
+ private _col;
11190
11661
  private _widthDim;
11191
11662
  private _heightDim;
11192
11663
  private _offsetXDim;
@@ -11196,7 +11667,7 @@ declare abstract class Annotation<OP extends AnnotationOptions = AnnotationOptio
11196
11667
  _w: number;
11197
11668
  _h: number;
11198
11669
  _anchorObj: ChartItem;
11199
- constructor(chart: IChart, inBody: boolean);
11670
+ constructor(chart: IChart, body: object);
11200
11671
  _type(): string;
11201
11672
  /**
11202
11673
  * 어노테이션 이름.<br/>
@@ -11220,13 +11691,15 @@ declare abstract class Annotation<OP extends AnnotationOptions = AnnotationOptio
11220
11691
  * ```
11221
11692
  */
11222
11693
  get name(): string;
11694
+ get row(): number;
11695
+ get col(): number;
11223
11696
  needClip(): boolean;
11224
11697
  getOffset(w: number, h: number): Point;
11225
11698
  getSize(wDomain: number, hDomain: number): Size;
11226
11699
  getPosition(inverted: boolean, left: number, top: number, wDomain: number, hDomain: number, width: number, height: number): Point;
11227
11700
  refresh(): void;
11228
11701
  _load(source: any): OP;
11229
- protected _doApply(options: AnnotationOptions): void;
11702
+ protected _doApply(options: OP): void;
11230
11703
  protected _doPrepareRender(chart: IChart): void;
11231
11704
  }
11232
11705
  /**
@@ -11248,6 +11721,7 @@ declare class AnnotationCollection extends ChartItemCollection<Annotation> {
11248
11721
  private _visibles;
11249
11722
  constructor(owner: IAnnotationOwner);
11250
11723
  getVisibles(): Annotation[];
11724
+ getPaneVisibles(row: number, col: number): Annotation[];
11251
11725
  getAnnotation(name: string): Annotation;
11252
11726
  get(name: string | number): Annotation;
11253
11727
  load(src: any, inBody: boolean): void;
@@ -11772,13 +12246,14 @@ declare abstract class GroupElement extends RcElement {
11772
12246
  }
11773
12247
 
11774
12248
  declare abstract class ChartElement<T extends ChartItem = ChartItem> extends RcElement {
11775
- model: T;
12249
+ protected _model: T;
11776
12250
  protected options: ChartItemOptions;
11777
12251
  mw: number;
11778
12252
  mh: number;
11779
12253
  _debugRect: RectElement;
11780
12254
  constructor(doc: Document, styleName?: any);
11781
12255
  chart(): IChart;
12256
+ get model(): T;
11782
12257
  protected _prepareStyleOrClass(model: T): void;
11783
12258
  setModel(model: T): void;
11784
12259
  measure(doc: Document, model: T, hintWidth: number, hintHeight: number, phase: number): Size;
@@ -11867,21 +12342,30 @@ declare class ContinuousAxisGrid extends AxisGrid<ContinuousAxisGridOptions> {
11867
12342
  * {@page options} 모델은 {@page op.ContinuousAxisTickOptions}이다.
11868
12343
  */
11869
12344
  declare class ContinuousAxisTick<OP extends ContinuousAxisTickOptions = ContinuousAxisTickOptions> extends AxisTick<OP> {
12345
+ private static readonly STEP_PIXELS_P;
12346
+ private static readonly STEP_PIXELS_Y;
12347
+ private static readonly STEP_PIXELS_X;
12348
+ private static readonly STEP_MULTIPLES;
11870
12349
  static defaults: ContinuousAxisTickOptions;
11871
12350
  _baseAxis: Axis;
11872
12351
  _step: number;
11873
12352
  _strictEnds: boolean;
11874
- _strictTicks: boolean;
11875
- protected _isValidInterval(v: any): boolean;
12353
+ _userTicks: boolean;
12354
+ private _stepPixels;
12355
+ private _userMultiples;
12356
+ protected _getValidInterval(axis: ContinuousAxis, v: any, length: number, min: number, max: number): any;
11876
12357
  _normalizeSteps(steps: number[], min: number, max: number): number[];
11877
- buildSteps(length: number, base: number, min: number, max: number, broken?: boolean): number[];
12358
+ protected _checkUserSteps(pts: number[]): number[];
12359
+ buildSteps(axis: ContinuousAxis, length: number, base: number, min: number, max: number, broken?: boolean): number[];
11878
12360
  getNextStep(step: number, delta: number): number;
11879
12361
  canUseNumSymbols(): boolean;
12362
+ protected _doApply(op: OP): void;
12363
+ private $_getStepPixels;
11880
12364
  _findBaseAxis(): void;
11881
12365
  private $_normalizeMin;
11882
12366
  protected _getStepsByCount(count: number, baseVal: number, min: number, max: number, based: boolean): number[];
11883
12367
  protected _getStepsByInterval(interval: any, base: number, min: number, max: number): number[];
11884
- protected _getStepMultiples(step: number): number[];
12368
+ protected _getStepMultiples(scale: number): number[];
11885
12369
  protected _getStepsByPixels(length: number, pixels: number, base: number, min: number, max: number): number[];
11886
12370
  }
11887
12371
  /**
@@ -11927,10 +12411,12 @@ interface IAxisBreakSect {
11927
12411
  /**
11928
12412
  * 연속 축의 {@page config.yAxis.linear#baseValue} 위치에 표시되는 선(line) 모델.<br/>
11929
12413
  * {@page options 옵션} 모델은 {@page op.AxisBaseLineOptions}이다.<br/>
12414
+ * 축의 최소값이 {@page config.axis.linear#baseValue}보다 작을 때만 표시된다.
11930
12415
  * 기본적으로 표시되지 않는다.
11931
12416
  */
11932
12417
  declare class AxisBaseLine extends AxisLine {
11933
12418
  static defaults: AxisBaseLineOptions;
12419
+ protected _isVisible(): boolean;
11934
12420
  }
11935
12421
  /**
11936
12422
  * 연속축 모델들의 기반 클래스.<br/>
@@ -11940,9 +12426,17 @@ declare class AxisBaseLine extends AxisLine {
11940
12426
  * 양 끝에 공간을 추가할 수 있다. // calcPoints() 참조.
11941
12427
  */
11942
12428
  declare abstract class ContinuousAxis<OP extends ContinuousAxisOptions = ContinuousAxisOptions> extends Axis<OP> {
12429
+ private static readonly PADDINGS;
11943
12430
  static defaults: ContinuousAxisOptions;
11944
12431
  private _baseLine;
12432
+ _minPadPixels: number;
12433
+ _maxPadPixels: number;
12434
+ private _minPaddings;
12435
+ private _maxPaddings;
12436
+ private _strictMin;
12437
+ private _strictMax;
11945
12438
  private _baseVal;
12439
+ private _runBase;
11946
12440
  private _unitLen;
11947
12441
  _calcedMin: number;
11948
12442
  _calcedMax: number;
@@ -11977,15 +12471,18 @@ declare abstract class ContinuousAxis<OP extends ContinuousAxisOptions = Continu
11977
12471
  hasBreak(): boolean;
11978
12472
  _getBreaks(): AxisBreak[];
11979
12473
  isBreak(pos: number): boolean;
11980
- protected _doApply(options: AxisOptions): void;
12474
+ private $_getPadding;
12475
+ protected _doApply(op: OP): void;
11981
12476
  continuous(): boolean;
11982
12477
  isBased(): boolean;
11983
12478
  protected _createGrid(): ContinuousAxisGrid;
11984
12479
  protected _createTickModel(): ContinuousAxisTick;
11985
12480
  protected abstract _createLabel(): ContinuousAxisLabel;
11986
12481
  protected _doPrepareRender(): void;
11987
- protected _doBuildTicks(calcedMin: number, calcedMax: number, length: number): IAxisTick[];
11988
- protected _createTick(length: number, index: number, step: number): IAxisTick;
12482
+ private _prevSteps;
12483
+ protected _doBuildTicks(calcedMin: number, calcedMax: number, length: number, phase: number): IAxisTick[];
12484
+ private $_createTicks;
12485
+ protected _createTick(index: number, step: number): IAxisTick;
11989
12486
  _calcPoints(length: number, phase: number): void;
11990
12487
  private $_buildBrokenSteps;
11991
12488
  private $_getBrokenSteps;
@@ -11994,16 +12491,14 @@ declare abstract class ContinuousAxis<OP extends ContinuousAxisOptions = Continu
11994
12491
  xValueAt(pos: number): number;
11995
12492
  getUnitLen(length: number, value: number): number;
11996
12493
  getLabelLength(length: number, value: number): number;
11997
- private _getStartFit;
11998
- private _getEndFit;
11999
- protected _adjustMinMax(min: number, max: number, length: number): {
12494
+ private $_getStartFit;
12495
+ private $_getEndFit;
12496
+ private $_calcStrict;
12497
+ protected _adjustMinMax(length: number, min: number, max: number): {
12000
12498
  min: number;
12001
12499
  max: number;
12002
12500
  };
12003
- protected $_calcUnitLength(length: number): {
12004
- len: number;
12005
- min: number;
12006
- };
12501
+ private $_calcXUnitLength;
12007
12502
  protected _calcUnitLen(vals: number[], length: number, axisMin: number, axisMax: number): {
12008
12503
  len: number;
12009
12504
  min: number;
@@ -12030,7 +12525,7 @@ declare class LinearAxis extends ContinuousAxis<LinearAxisOptions> {
12030
12525
  */
12031
12526
  get label(): LinearAxisLabel;
12032
12527
  protected _createLabel(): ContinuousAxisLabel;
12033
- protected _adjustMinMax(min: number, max: number, length: number): {
12528
+ protected _adjustMinMax(length: number, min: number, max: number): {
12034
12529
  min: number;
12035
12530
  max: number;
12036
12531
  };
@@ -12065,11 +12560,12 @@ declare class ImageElement extends RcElement {
12065
12560
  * ChartText를 표시하는 텍스트 view.
12066
12561
  */
12067
12562
  declare class ChartTextElement extends GroupElement {
12068
- private _back;
12563
+ protected _back: RectElement;
12069
12564
  _outline: TextElement;
12070
12565
  _text: TextElement;
12071
12566
  _icon: ImageElement;
12072
12567
  private _model;
12568
+ private _box;
12073
12569
  constructor(doc: Document, styleName?: string);
12074
12570
  /** text */
12075
12571
  get text(): string;
@@ -12077,7 +12573,8 @@ declare class ChartTextElement extends GroupElement {
12077
12573
  setModel(doc: Document, model: IconedText, icon: string, contrastTarget: Element): ChartTextElement;
12078
12574
  setContrast(target: Element): ChartTextElement;
12079
12575
  layout(align: Align): ChartTextElement;
12080
- trans(x: number, y: number): ChartTextElement;
12576
+ setOutline(model: IconedText): void;
12577
+ getBBox(): IRect;
12081
12578
  }
12082
12579
 
12083
12580
  type Visitor<T extends RcElement> = (element: T, index?: number, count?: number) => void;
@@ -12234,6 +12731,7 @@ declare class PointLabelLineContainer extends GroupElement {
12234
12731
  }
12235
12732
  declare class PointContainer extends LayerElement {
12236
12733
  inverted: boolean;
12734
+ private _hSave;
12237
12735
  invert(v: boolean, height: number): boolean;
12238
12736
  }
12239
12737
  type LabelLayoutInfo = {
@@ -12268,6 +12766,7 @@ declare abstract class SeriesView<T extends Series = Series> extends ContentView
12268
12766
  _animations: Animation[];
12269
12767
  _hoverAnis: MarkerHoverAnimation[];
12270
12768
  _hoverPts: IPointView[];
12769
+ private _labelOverlap;
12271
12770
  constructor(doc: Document, styleName: string);
12272
12771
  clipInvertable(): boolean;
12273
12772
  getClipContainer(): RcElement;
@@ -12328,7 +12827,8 @@ declare abstract class SeriesView<T extends Series = Series> extends ContentView
12328
12827
  py: number;
12329
12828
  }[], start: number, end: number, sb: PathBuilder): void;
12330
12829
  private $_renderTrendline;
12331
- protected _layoutLabel(info: LabelLayoutInfo, w: number, h: number): void;
12830
+ protected _layoutLabel(model: DataPointLabel, info: LabelLayoutInfo, w: number, h: number): void;
12831
+ protected _checkLabelOverlap(lv: PointLabelView, r: IRect, px: number, py: number, pw: number, ph: number, x: number, y: number, inner: boolean, target: Element): boolean;
12332
12832
  protected _clipRange(w: number, h: number, rangeAxis: 'x' | 'y' | 'z', range: ValueRange, clip: ClipRectElement, inverted: boolean): void;
12333
12833
  protected _setFill(elt: RcElement, style: SVGStyleOrClass): void;
12334
12834
  protected _savePrevs(): void;
@@ -12338,6 +12838,44 @@ declare abstract class PointElement extends PathElement implements IPointView {
12338
12838
  constructor(doc: Document);
12339
12839
  savePrevs(): void;
12340
12840
  }
12841
+ declare abstract class BoxPointElement extends PointElement {
12842
+ labelViews: PointLabelView[];
12843
+ wPoint: number;
12844
+ hPoint: number;
12845
+ wSave: number;
12846
+ xSave: number;
12847
+ abstract layout(x: number, y: number, rTop: number, rBottom: number): void;
12848
+ savePrevs(): void;
12849
+ }
12850
+ declare class BarElement extends BoxPointElement {
12851
+ layout(x: number, y: number, rTop: number, rBottom: number): void;
12852
+ }
12853
+ declare abstract class ClusterableSeriesView<T extends Series = Series> extends SeriesView<T> {
12854
+ protected _labelInfo: LabelLayoutInfo;
12855
+ protected _prepareSeries(doc: Document, model: T): void;
12856
+ protected _renderSeries(width: number, height: number): void;
12857
+ protected _runShowEffect(firstTime: boolean): void;
12858
+ protected _doViewRateChanged(rate: number): void;
12859
+ protected _savePrevs(): void;
12860
+ getPointsAt(axis: Axis, pos: number): IPointView[];
12861
+ protected abstract _preparePoints(doc: Document, model: T, points: DataPoint[]): void;
12862
+ protected abstract _layoutPoints(width: number, height: number): void;
12863
+ protected abstract _layoutPoint(view: RcElement, index: number, x: number, y: number, wPoint: number, hPoint: number): void;
12864
+ }
12865
+ declare abstract class BoxedSeriesView<T extends ClusterableSeries> extends ClusterableSeriesView<T> {
12866
+ protected _pointOff: number;
12867
+ protected _prepareSeries(doc: Document, model: T): void;
12868
+ protected _doPrevRateChanged(rate: number): void;
12869
+ protected _layoutPoints(width: number, height: number): void;
12870
+ }
12871
+ interface IMarkerSeriesView {
12872
+ getNearest(x: number, y: number): {
12873
+ pv: IPointView;
12874
+ dist: number;
12875
+ };
12876
+ getHintDistance(): number;
12877
+ canHover(dist: number, pv: IPointView, hint: number): boolean;
12878
+ }
12341
12879
  declare abstract class MarkerSeriesPointView extends PointElement implements IPointView {
12342
12880
  beginHover(series: SeriesView<Series>, focused: boolean): void;
12343
12881
  setHoverRate(series: SeriesView<Series>, focused: boolean, rate: number): void;
@@ -12354,7 +12892,7 @@ declare abstract class MarkerSeriesView<T extends MarkerSeries, P extends DataPo
12354
12892
  protected _getPointPool(): ElementPool<RcElement>;
12355
12893
  clipInvertable(): boolean;
12356
12894
  getPointsAt(axis: Axis, pos: number): IPointView[];
12357
- protected abstract _getAutoPos(overflowed: boolean): PointLabelPosition;
12895
+ protected abstract _getDefaultPos(overflowed: boolean): PointLabelPosition;
12358
12896
  _getDrawer(shape: string): (rd: number) => (string | number)[];
12359
12897
  protected _layoutLabelView(labelView: PointLabelView, pos: PointLabelPosition, off: number, radius: number, x: number, y: number): void;
12360
12898
  }
@@ -12410,13 +12948,13 @@ declare class AxisGridRowContainer extends LayerElement {
12410
12948
  private _rows;
12411
12949
  prepare(): void;
12412
12950
  addAll(doc: Document, axes: Axis[]): void;
12413
- layout(width: number, height: number, polar: boolean): void;
12951
+ layout(w: number, h: number): void;
12414
12952
  }
12415
12953
  declare class AxisGuideContainer extends LayerElement {
12416
12954
  _linePool: AxisGuideLineView[];
12417
12955
  _rangePool: AxisGuideRangeView[];
12418
12956
  _views: AxisGuideView<AxisGuide>[];
12419
- prepare(): void;
12957
+ clean(): void;
12420
12958
  setAll(doc: Document, guides: AxisGuide[], polar: boolean): void;
12421
12959
  add<T extends RcElement>(child: T): T;
12422
12960
  }
@@ -12473,6 +13011,8 @@ declare class BodyView extends ChartElement<Body> implements IAnnotationAnchorOw
12473
13011
  private _bodyClip;
12474
13012
  constructor(doc: Document, owner: IPlottingOwner);
12475
13013
  getAnnotationAnchor(model: any): RcElement;
13014
+ getCol(): number;
13015
+ getRow(): number;
12476
13016
  prepareRender(doc: Document, chart: IChart, polar: boolean): void;
12477
13017
  prepareGuideContainers(): void;
12478
13018
  pointerMoved(p: Point, target: EventTarget): boolean;
@@ -12550,6 +13090,7 @@ declare class AxisView extends ChartElement<Axis> {
12550
13090
  private _labelContainer;
12551
13091
  private _labelViews;
12552
13092
  _scrollView: AxisScrollView;
13093
+ private _reversed;
12553
13094
  private _markLen;
12554
13095
  private _labelSize;
12555
13096
  private _labelRowPts;
@@ -12560,11 +13101,6 @@ declare class AxisView extends ChartElement<Axis> {
12560
13101
  _prevMin: number;
12561
13102
  _prevMax: number;
12562
13103
  private _chartEmpty;
12563
- private _empty;
12564
- private _edgeStart;
12565
- private _marginStart;
12566
- private _marginEnd;
12567
- private _edgeEnd;
12568
13104
  constructor(doc: Document);
12569
13105
  private $_checkScrollView;
12570
13106
  checkHeight(doc: Document, width: number, height: number): number;
@@ -12591,8 +13127,8 @@ declare class AxisView extends ChartElement<Axis> {
12591
13127
  private $_checkOverlappedHorz2;
12592
13128
  private $_applyStep;
12593
13129
  private $_measureLabelsHorz;
12594
- private $_checkOverlappedVert;
12595
13130
  private $_checkOverlappedVert2;
13131
+ private _prevWidth;
12596
13132
  private $_measureLabelsVert;
12597
13133
  private $_layoutLabelsHorz;
12598
13134
  private $_layoutLabelsVert;
@@ -12763,88 +13299,6 @@ declare class ChartControl extends RcControl implements IChartEventListener {
12763
13299
  private _export;
12764
13300
  }
12765
13301
 
12766
- /**
12767
- * 카테고리축의 tick 모델.<br/>
12768
- * {@page options} 모델은 {@page op.CategoryAxisTickOptions}이다.
12769
- */
12770
- declare class CategoryAxisTick extends AxisTick<CategoryAxisTickOptions> {
12771
- static defaults: CategoryAxisTickOptions;
12772
- getPosition(): CategoryTickPosition;
12773
- }
12774
- /**
12775
- * @internal
12776
- *
12777
- * 카테고리축의 라벨 모델.<br/>
12778
- * {@page options} 모델은 {@page op.AxisLabelOptions}이다.
12779
- */
12780
- declare class CategoryAxisLabel extends AxisLabel<AxisLabelOptions> {
12781
- getTick(index: number, v: any): string;
12782
- getIcon(tick: IAxisTick): string;
12783
- }
12784
- /**
12785
- * @internal
12786
- *
12787
- * 카테고리축의 grid 모델.<br/>
12788
- * {@page options} 모델은 {@page op.AxisGridOptions}이다.
12789
- */
12790
- declare class CategoryAxisGrid extends AxisGrid<AxisGridOptions> {
12791
- getPoints(axis: CategoryAxis): number[];
12792
- }
12793
- /**
12794
- * 카테고리 축 모델.<br/>
12795
- * {@page op.AxisOptions#type}은 {@page config.xAxis.category 'category'}이고,
12796
- * {@page options 설정} 모델은 {@page op.CategoryAxisOptions}이다.
12797
- */
12798
- declare class CategoryAxis extends Axis<CategoryAxisOptions> {
12799
- static type: string;
12800
- static defaults: CategoryAxisOptions;
12801
- _categories: {
12802
- c: string;
12803
- t: string;
12804
- w: number;
12805
- i?: string;
12806
- }[];
12807
- _weights: number[];
12808
- _len: number;
12809
- private _map;
12810
- private _catPad;
12811
- private _catMin;
12812
- private _catMax;
12813
- private _catLen;
12814
- _pts: number[];
12815
- _tstep: number;
12816
- get tick(): CategoryAxisTick;
12817
- xValueAt(pos: number): number;
12818
- _type(): string;
12819
- unitPad(): number;
12820
- continuous(): boolean;
12821
- polarOff(): number;
12822
- _prepareZoom(): AxisZoom;
12823
- protected _createGrid(): CategoryAxisGrid;
12824
- protected _createTickModel(): CategoryAxisTick;
12825
- protected _createLabel(): CategoryAxisLabel;
12826
- collectValues(): void;
12827
- getStartAngle(): number;
12828
- protected _doPrepareRender(): void;
12829
- protected _adjustMinMax(min: number, max: number, length: number): {
12830
- min: number;
12831
- max: number;
12832
- };
12833
- protected _doBuildTicks(min: number, max: number, length: number): IAxisTick[];
12834
- _calcPoints(length: number, phase: number): void;
12835
- getPos(length: number, value: number): number;
12836
- valueAt(length: number, pos: number): number;
12837
- getUnitLen(length: number, value: number): number;
12838
- getLabelLength(length: number, value: number): number;
12839
- getValue(value: any): number;
12840
- getXLabel(value: number): any;
12841
- _doCalculateRange(values: number[]): {
12842
- min: number;
12843
- max: number;
12844
- };
12845
- private $_collectCategories;
12846
- }
12847
-
12848
13302
  /**
12849
13303
  * @internal
12850
13304
  * 시간축의 tick 모델.<br/>
@@ -12855,7 +13309,7 @@ declare class CategoryAxis extends Axis<CategoryAxisOptions> {
12855
13309
  declare class TimeAxisTick extends ContinuousAxisTick<TimeAxisTickOptions> {
12856
13310
  _scale: number;
12857
13311
  getNextStep(curr: number, delta: number): number;
12858
- protected _isValidInterval(v: any): boolean;
13312
+ protected _getValidInterval(axis: ContinuousAxis, v: any, length: number, min: number, max: number): string | number;
12859
13313
  protected _getStepMultiples(step: number): number[];
12860
13314
  protected _getStepsByPixels(length: number, pixels: number, base: number, min: number, max: number): number[];
12861
13315
  protected _getStepsByInterval(interval: any, base: number, min: number, max: number): number[];
@@ -12930,7 +13384,7 @@ declare class LogAxis extends ContinuousAxis<LogAxisOptions> {
12930
13384
  /**
12931
13385
  * 화면 표시는 역log 값들을 사용한다.
12932
13386
  */
12933
- protected _createTick(length: number, index: number, step: number): IAxisTick;
13387
+ protected _createTick(index: number, step: number): IAxisTick;
12934
13388
  protected _calcUnitLen(vals: number[], length: number, axisMin: number, axisMax: number): {
12935
13389
  len: number;
12936
13390
  min: number;
@@ -12967,7 +13421,7 @@ declare class LinePointLabel extends DataPointLabel<LinePointLabelOptions> {
12967
13421
  * 라인 시리즈 계열의 기반(base) 클래스.<br/>
12968
13422
  * {@page options 옵션} 모델은 {@page op.LineSeriesBaseOptions}이다.<br/>
12969
13423
  * //포인트 label들은 'head', 'foot', 'inside'에 위치할 수 있다.<br/>
12970
- * //기본값은 'auto'('head'')이다.
13424
+ * //기본값은 'default'('head'')이다.
12971
13425
  * //pointLabel.align으로 수평 정렬을 설정할 수있다.
12972
13426
  */
12973
13427
  declare abstract class LineSeriesBase<OP extends LineSeriesBaseOptions = LineSeriesBaseOptions> extends ConnectableSeries<OP> {
@@ -13022,7 +13476,7 @@ declare class LineSeries<OP extends LineSeriesOptions = LineSeriesOptions> exten
13022
13476
  static readonly type: string;
13023
13477
  static defaults: LineSeriesOptions;
13024
13478
  private _flag;
13025
- private _base;
13479
+ protected _base: number;
13026
13480
  protected _doInitChildren(op: {
13027
13481
  [child: string]: ChartItemOptions;
13028
13482
  }): void;
@@ -13034,6 +13488,7 @@ declare class LineSeries<OP extends LineSeriesOptions = LineSeriesOptions> exten
13034
13488
  protected _connectNulls(): boolean;
13035
13489
  getBaseValue(axis: IAxis): number;
13036
13490
  protected _doPrepareRender(): void;
13491
+ protected _getGroupBase(): number;
13037
13492
  }
13038
13493
  /**
13039
13494
  * Spline 시리즈 모델.<br/>
@@ -13059,6 +13514,7 @@ declare class AreaSeriesPoint extends LineSeriesPoint {
13059
13514
  */
13060
13515
  declare class AreaSeries<OP extends AreaSeriesOptions = AreaSeriesOptions> extends LineSeries<OP> {
13061
13516
  static readonly type: string;
13517
+ static defaults: LineSeriesOptions;
13062
13518
  _areas: PointLine[];
13063
13519
  protected _doInitChildren(op: {
13064
13520
  [child: string]: ChartItemOptions;
@@ -13067,9 +13523,9 @@ declare class AreaSeries<OP extends AreaSeriesOptions = AreaSeriesOptions> exten
13067
13523
  * 미리 생성된 line들을 기준으로 area들을 생성한다.
13068
13524
  */
13069
13525
  prepareAreas(): void;
13070
- isBased(axis: IAxis): boolean;
13071
13526
  protected _createLegendMarker(doc: Document, size: number): RcElement;
13072
13527
  protected _createPoint(source: any): AreaSeriesPoint;
13528
+ isBased(axis: IAxis): boolean;
13073
13529
  protected _doPrepareLines(pts: LineSeriesPoint[]): PointLine[];
13074
13530
  }
13075
13531
  /**
@@ -13116,7 +13572,7 @@ declare class AreaRangeSeries extends LineSeriesBase<AreaRangeSeriesOptions> {
13116
13572
  * {@page op.SeriesOptions#type}은 {@page config.series.linegroup 'linegroup'}이고,
13117
13573
  * {@page options 옵션} 모델은 {@page op.LineSeriesGroupOptions}이다.
13118
13574
  */
13119
- declare class LineSeriesGroup extends SeriesGroup<LineSeries, LineSeriesGroupOptions> {
13575
+ declare class LineSeriesGroup<T extends LineSeries = LineSeries, OP extends LineSeriesGroupOptions = LineSeriesGroupOptions> extends SeriesGroup<T, OP> {
13120
13576
  static readonly type = "linegroup";
13121
13577
  static readonly seriesType = "line";
13122
13578
  static defaults: LineSeriesGroupOptions;
@@ -13137,6 +13593,18 @@ declare class AreaSeriesGroup extends SeriesGroup<AreaSeries, AreaSeriesGroupOpt
13137
13593
  getBaseValue(axis: IAxis): number;
13138
13594
  }
13139
13595
 
13596
+ /**
13597
+ * [y]
13598
+ * [x, y]
13599
+ */
13600
+ declare class BarSeriesPoint extends DataPoint {
13601
+ /**
13602
+ * bar 너비.<br/>
13603
+ * 원래 차지할 너비에 대한 상대값. 1이면 원래대로 표시된다.
13604
+ */
13605
+ width?: number;
13606
+ protected _readObject(series: BarSeries, v: any): void;
13607
+ }
13140
13608
  /**
13141
13609
  * Bar 시리즈 계열의 기반(base) 모델.<br/>
13142
13610
  * {@page options 설정} 모델은 {@page op.BarSeriesBaseOptions}이다.
@@ -13153,8 +13621,8 @@ declare abstract class BarSeriesBase<OP extends BarSeriesBaseOptions = BarSeries
13153
13621
  * {@page op.SeriesOptions#type}은 {@page config.series.bar 'bar'}이고,
13154
13622
  * {@page options 설정} 모델은 {@page op.BarSeriesOptions}이다.
13155
13623
  */
13156
- declare class BarSeries extends BarSeriesBase<BarSeriesOptions> {
13157
- static readonly type = "bar";
13624
+ declare class BarSeries<OP extends BarSeriesOptions = BarSeriesOptions> extends BarSeriesBase<OP> {
13625
+ static readonly type: string;
13158
13626
  protected _createLegendMarker(doc: Document, size: number): RcElement;
13159
13627
  get canPolar(): boolean;
13160
13628
  }
@@ -13204,6 +13672,8 @@ declare class BellCurveSeriesPoint extends AreaSeriesPoint {
13204
13672
  declare class BellCurveSeries extends AreaSeries<BellCurveSeriesOptions> {
13205
13673
  static readonly type = "bellcurve";
13206
13674
  static defaults: BellCurveSeriesOptions;
13675
+ private _refer;
13676
+ isEmpty(): boolean;
13207
13677
  getLineType(): LineType;
13208
13678
  protected _createPoint(source: any): BellCurveSeriesPoint;
13209
13679
  protected _doLoadData(src: any): any[];
@@ -13533,6 +14003,8 @@ declare class ParetoSeriesPoint extends LineSeriesPoint {
13533
14003
  declare class ParetoSeries extends LineSeriesBase<ParetoSeriesOptions> {
13534
14004
  static readonly type = "pareto";
13535
14005
  static defaults: ParetoSeriesOptions;
14006
+ private _refer;
14007
+ isEmpty(): boolean;
13536
14008
  getLineType(): LineType;
13537
14009
  protected _createPoint(source: any): ParetoSeriesPoint;
13538
14010
  _referOtherSeries(series: Series): boolean;
@@ -13738,6 +14210,98 @@ declare class Color {
13738
14210
  private $_parseNumber;
13739
14211
  }
13740
14212
 
14213
+ declare abstract class BarSeriesViewBase<T extends BarSeriesBase> extends BoxedSeriesView<T> {
14214
+ private _bars;
14215
+ private _sectors;
14216
+ protected _labelInfo: LabelLayoutInfo;
14217
+ protected _getPointPool(): ElementPool<RcElement>;
14218
+ protected _preparePoints(doc: Document, model: T, points: DataPoint[]): void;
14219
+ protected _setPointStyle(v: RcElement, model: T, p: DataPoint): void;
14220
+ protected _layoutPoints(width: number, height: number): void;
14221
+ protected abstract _createBarPool(container: RcElement): ElementPool<PointElement>;
14222
+ private $_parepareBars;
14223
+ private $_parepareSectors;
14224
+ private $_layoutSectors;
14225
+ }
14226
+ declare class BarSeriesView<T extends BarSeries = BarSeries> extends BarSeriesViewBase<T> {
14227
+ protected _rdTop: number;
14228
+ protected _rdBottom: number;
14229
+ constructor(doc: Document, className?: string);
14230
+ protected _createBarPool(container: RcElement): ElementPool<PointElement>;
14231
+ protected _prepareSeries(doc: Document, model: T): void;
14232
+ protected _layoutPoint(view: BarElement, i: number, x: number, y: number, wPoint: number, hPoint: number): void;
14233
+ }
14234
+
14235
+ declare class LineMarkerView extends MarkerSeriesPointView implements IPointView {
14236
+ _shape: Shape;
14237
+ _radius: number;
14238
+ private _saveRadius;
14239
+ index: number;
14240
+ _t: string;
14241
+ getTooltipPos(): Point;
14242
+ beginHover(series: LineSeriesBaseView<LineSeries>, focused: boolean): void;
14243
+ setHoverRate(series: LineSeriesBaseView<LineSeries>, focused: boolean, rate: number): void;
14244
+ endHover(series: LineSeriesBaseView<LineSeries>, focused: boolean): void;
14245
+ distance(rd: number, x: number, y: number): number;
14246
+ distance2(rd: number, x: number, y: number, inverted: boolean): number;
14247
+ }
14248
+ declare class LineContainer extends PointContainer {
14249
+ }
14250
+ declare abstract class LineSeriesBaseView<T extends LineSeriesBase = LineSeriesBase> extends SeriesView<T> implements IMarkerSeriesView {
14251
+ protected _lineContainer: LineContainer;
14252
+ private _line;
14253
+ protected _needBelow: boolean;
14254
+ private _lowLine;
14255
+ protected _upperClip: ClipElement;
14256
+ protected _lowerClip: ClipElement;
14257
+ protected _markers: ElementPool<LineMarkerView>;
14258
+ private _rangeLines;
14259
+ private _rangeClips;
14260
+ protected _polar: IPolar;
14261
+ constructor(doc: Document, styleName: string);
14262
+ getClipContainer(): RcElement;
14263
+ protected _getPointPool(): ElementPool<RcElement>;
14264
+ needDecoreateLegend(): boolean;
14265
+ decoreateLegend(legendView: LegendItemView): void;
14266
+ protected _prepareSeries(doc: Document, model: T, polar: boolean): void;
14267
+ protected _prepareViewRanges(model: T): void;
14268
+ protected _renderSeries(width: number, height: number): void;
14269
+ protected _doAfterLayout(): void;
14270
+ protected _runShowEffect(firstTime: boolean): void;
14271
+ protected _doViewRateChanged(rate: number): void;
14272
+ getPointsAt(axis: Axis, pos: number): IPointView[];
14273
+ getNearest(x: number, y: number): {
14274
+ pv: IPointView;
14275
+ dist: number;
14276
+ };
14277
+ getNearest2(x: number, y: number, inverted: boolean): {
14278
+ pv: IPointView;
14279
+ dist: number;
14280
+ };
14281
+ getHintDistance(): number;
14282
+ canHover(dist: number, pv: LineMarkerView, hint: number): boolean;
14283
+ protected _markersPerPoint(): number;
14284
+ protected _prepareBelow(series: LineSeries, polar: boolean): boolean;
14285
+ protected _prepareRanges(model: T, ranges: ValueRange[]): void;
14286
+ private $_resetClips;
14287
+ private $_prepareMarkers;
14288
+ protected _prepareMakrer(mv: LineMarkerView): void;
14289
+ protected _layoutMarker(mv: LineMarkerView, markerStyle: SVGStyleOrClass, x: number, y: number): void;
14290
+ protected _layoutMarkers(pts: LineSeriesPoint[], width: number, height: number): void;
14291
+ protected _layoutLines(polar: boolean): void;
14292
+ protected _buildLine2(line: PointLine, t: LineType, connected: boolean, sb: PathBuilder): void;
14293
+ protected _buildLines2(lines: PointLine[]): string;
14294
+ private _drawLine2;
14295
+ private _drawLines;
14296
+ private _drawStep2;
14297
+ private _drawSteps;
14298
+ private _drawCurve2;
14299
+ private _drawCurves;
14300
+ protected _drawCurve(pts: IPointPos[], from: number, sb: PathBuilder): void;
14301
+ protected _buildAreas(lines: PointLine[], t1: LineType, t2?: LineType): string;
14302
+ setHoverStyle(pv: RcElement): void;
14303
+ }
14304
+
13741
14305
  declare abstract class SeriesAnimation {
13742
14306
  static reveal(series: SeriesView<Series>, options?: IRevealAnimation): void;
13743
14307
  static grow(series: SeriesView<Series>, endHandler?: RcAnimationEndHandler): void;
@@ -13841,6 +14405,7 @@ declare const isObject: (v: any) => boolean;
13841
14405
  /** @internal */
13842
14406
  declare const isArray: (arg: any) => arg is any[];
13843
14407
  declare const isString: (v: any) => v is string;
14408
+ declare const isNumber: (v: any) => v is number;
13844
14409
  /** @internal */
13845
14410
  declare const assignObj: {
13846
14411
  <T extends {}, U>(target: T, source: U): T & U;
@@ -13928,6 +14493,7 @@ declare abstract class GaugeGroupView<T extends GaugeGroup = GaugeGroup, GV exte
13928
14493
  declare class Utils {
13929
14494
  static LOGGING: boolean;
13930
14495
  static log(...msg: any[]): void;
14496
+ static warn(...msg: any[]): void;
13931
14497
  static week_days: string[];
13932
14498
  static long_week_days: string[];
13933
14499
  static month_days: number[][];
@@ -13968,6 +14534,7 @@ declare class Utils {
13968
14534
  static toStr(value: any): string;
13969
14535
  static equalNumbers(a: number, b: number): boolean;
13970
14536
  static equalArrays(a: any[], b: any[]): boolean;
14537
+ static parseTuples(src: number | [number, number][]): [number, number][];
13971
14538
  static isEmpty(obj: {}): boolean;
13972
14539
  static isNotEmpty(obj: {}): boolean;
13973
14540
  static setter(prop: string): string;
@@ -14012,4 +14579,4 @@ declare const createChart: typeof Globals.createChart;
14012
14579
  declare const createData: typeof Globals.createData;
14013
14580
  declare const setLicenseKey: typeof Globals.setLicenseKey;
14014
14581
 
14015
- 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, ChartPoint, 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, 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, LoadCallbackArgs, LogAxis, LogAxisOptions, LogAxisTickOptions, LollipopSeries, LollipopSeriesMarkerOptions, LollipopSeriesOptions, LowRangedSeries, LowRangedSeriesOptions, MarkerSeries, MarkerSeriesOptions, MarkerSeriesPointView, MarkerSeriesView, NavigatorMask, NavigiatorHandle, NavigiatorHandleOptions, NavigiatorMaskOptions, ORG_ANGLE, OhlcSeries, OhlcSeriesOptions, OthersGroup, OthersGroupOptions, 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, WidgetSeriesPoint, WidgetSeriesView, WordCloudSeriesOptions, WordCloudSeriesType, ZValuePoint, ZoomButtonOptions, ZoomCallbackArgs, 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, setLicenseKey, setLogging, sin, toStr };
14582
+ 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, BarSeriesPoint, BarSeriesView, 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, ChartPoint, 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, HeatmapSeriesOptions, HeatmapSeriesType, HistogramSeries, HistogramSeriesOptions, IAxis, IAxisTick, 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, LineSeriesBaseView, LineSeriesFlagOptions, LineSeriesGroup, LineSeriesGroupOptions, LineSeriesMarkerOptions, LineSeriesOptions, LineSeriesPoint, LinearAxis, LinearAxisLabelOptions, LinearAxisOptions, LinearGaugeBaseOptions, LinearGaugeChildLabelOptions, LinearGaugeGroupBaseOptions, LinearGaugeGroupLabelOptions, LinearGaugeGroupOptions, LinearGaugeGroupType, LinearGaugeLabelOptions, LinearGaugeOptions, LinearGaugeScaleOptions, LinearGaugeType, LinearGradientOptions, LinearValueBarOptions, LoadCallbackArgs, LogAxis, LogAxisOptions, LogAxisTickOptions, LollipopSeries, LollipopSeriesMarkerOptions, LollipopSeriesOptions, LowRangedSeries, LowRangedSeriesOptions, MarkerSeries, MarkerSeriesOptions, MarkerSeriesPointView, MarkerSeriesView, NavigatorMask, NavigiatorHandle, NavigiatorHandleOptions, NavigiatorMaskOptions, ORG_ANGLE, OhlcSeries, OhlcSeriesOptions, OthersGroup, OthersGroupOptions, 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, RaceBarSeriesOptions, RaceBarSeriesType, RaceCallbackArgs, RaceLineSeriesOptions, RaceLineSeriesType, 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, WidgetSeriesPoint, WidgetSeriesView, WordCloudSeriesOptions, WordCloudSeriesType, ZValuePoint, ZoomButtonOptions, ZoomCallbackArgs, absv, assignObj, buildValueRanges, calcPercent, configure, copyObj, cos, createChart, createData, createRect, extend, fixnum, getVersion, incv, isArray, isEmptyRect, isNumber, isObject, isString, maxv, minv, parsePercentSize, pickNum, pickProp, pickProp3, pixel, rectToSize, setAnimatable, setDebugging, setLicenseKey, setLogging, sin, toStr };