@orbcharts/plugins-basic 3.0.0-alpha.45 → 3.0.0-alpha.47

Sign up to get free protection for your applications and to get access to all the features.
Files changed (153) hide show
  1. package/LICENSE +200 -200
  2. package/dist/orbcharts-plugins-basic.es.js +826 -791
  3. package/dist/orbcharts-plugins-basic.umd.js +7 -7
  4. package/dist/src/index.d.ts +5 -1
  5. package/dist/{orbcharts-plugins-basic/src → src}/series/seriesObservables.d.ts +4 -4
  6. package/package.json +42 -42
  7. package/src/base/BaseBarStack.ts +778 -778
  8. package/src/base/BaseBars.ts +764 -764
  9. package/src/base/BaseBarsTriangle.ts +672 -672
  10. package/src/base/BaseDots.ts +502 -502
  11. package/src/base/BaseGroupAxis.ts +496 -496
  12. package/src/base/BaseLegend.ts +641 -641
  13. package/src/base/BaseLineAreas.ts +625 -625
  14. package/src/base/BaseLines.ts +699 -699
  15. package/src/base/BaseValueAxis.ts +478 -478
  16. package/src/base/types.ts +2 -2
  17. package/src/grid/defaults.ts +121 -121
  18. package/src/grid/gridObservables.ts +247 -247
  19. package/src/grid/index.ts +15 -15
  20. package/src/grid/plugins/BarStack.ts +50 -50
  21. package/src/grid/plugins/Bars.ts +51 -51
  22. package/src/grid/plugins/BarsDiverging.ts +41 -41
  23. package/src/grid/plugins/BarsTriangle.ts +50 -50
  24. package/src/grid/plugins/Dots.ts +37 -37
  25. package/src/grid/plugins/GridLegend.ts +59 -59
  26. package/src/grid/plugins/GroupAux.ts +645 -645
  27. package/src/grid/plugins/GroupAxis.ts +42 -42
  28. package/src/grid/plugins/LineAreas.ts +39 -39
  29. package/src/grid/plugins/Lines.ts +38 -38
  30. package/src/grid/plugins/ScalingArea.ts +173 -173
  31. package/src/grid/plugins/ValueAxis.ts +43 -43
  32. package/src/grid/plugins/ValueStackAxis.ts +79 -79
  33. package/src/grid/types.ts +120 -120
  34. package/src/index.ts +9 -9
  35. package/src/multiGrid/defaults.ts +147 -147
  36. package/src/multiGrid/index.ts +11 -11
  37. package/src/multiGrid/multiGridObservables.ts +42 -42
  38. package/src/multiGrid/plugins/MultiBarStack.ts +78 -74
  39. package/src/multiGrid/plugins/MultiBars.ts +77 -73
  40. package/src/multiGrid/plugins/MultiBarsTriangle.ts +77 -73
  41. package/src/multiGrid/plugins/MultiDots.ts +65 -60
  42. package/src/multiGrid/plugins/MultiGridLegend.ts +89 -89
  43. package/src/multiGrid/plugins/MultiGroupAxis.ts +69 -65
  44. package/src/multiGrid/plugins/MultiLineAreas.ts +67 -62
  45. package/src/multiGrid/plugins/MultiLines.ts +66 -61
  46. package/src/multiGrid/plugins/MultiValueAxis.ts +69 -65
  47. package/src/multiGrid/plugins/OverlappingValueAxes.ts +173 -169
  48. package/src/multiGrid/types.ts +67 -67
  49. package/src/noneData/defaults.ts +64 -64
  50. package/src/noneData/index.ts +3 -3
  51. package/src/noneData/plugins/Container.ts +10 -10
  52. package/src/noneData/plugins/Tooltip.ts +310 -310
  53. package/src/noneData/types.ts +26 -26
  54. package/src/series/defaults.ts +109 -109
  55. package/src/series/index.ts +6 -6
  56. package/src/series/plugins/Bubbles.ts +602 -571
  57. package/src/series/plugins/Pie.ts +563 -548
  58. package/src/series/plugins/PieEventTexts.ts +262 -258
  59. package/src/series/plugins/PieLabels.ts +339 -335
  60. package/src/series/plugins/SeriesLegend.ts +59 -59
  61. package/src/series/seriesObservables.ts +145 -145
  62. package/src/series/seriesUtils.ts +50 -50
  63. package/src/series/types.ts +67 -67
  64. package/src/tree/defaults.ts +22 -22
  65. package/src/tree/index.ts +3 -3
  66. package/src/tree/plugins/TreeLegend.ts +59 -59
  67. package/src/tree/plugins/TreeMap.ts +305 -305
  68. package/src/tree/types.ts +23 -23
  69. package/src/utils/commonUtils.ts +21 -21
  70. package/src/utils/d3Graphics.ts +124 -124
  71. package/src/utils/d3Utils.ts +73 -73
  72. package/src/utils/observables.ts +14 -14
  73. package/src/utils/orbchartsUtils.ts +100 -100
  74. package/tsconfig.dev.json +16 -16
  75. package/tsconfig.json +13 -16
  76. package/tsconfig.prod.json +13 -13
  77. package/vite.config.js +49 -49
  78. package/dist/orbcharts-plugins-basic/src/index.d.ts +0 -5
  79. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseBarStack.d.ts +0 -0
  80. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseBars.d.ts +0 -0
  81. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseBarsTriangle.d.ts +0 -0
  82. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseDots.d.ts +0 -0
  83. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseGroupArea.d.ts +0 -0
  84. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseGroupAxis.d.ts +0 -0
  85. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseLegend.d.ts +0 -0
  86. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseLineAreas.d.ts +0 -0
  87. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseLines.d.ts +0 -0
  88. /package/dist/{orbcharts-plugins-basic/src → src}/base/BaseValueAxis.d.ts +0 -0
  89. /package/dist/{orbcharts-plugins-basic/src → src}/base/types.d.ts +0 -0
  90. /package/dist/{orbcharts-plugins-basic/src → src}/grid/defaults.d.ts +0 -0
  91. /package/dist/{orbcharts-plugins-basic/src → src}/grid/gridObservables.d.ts +0 -0
  92. /package/dist/{orbcharts-plugins-basic/src → src}/grid/index.d.ts +0 -0
  93. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/BarStack.d.ts +0 -0
  94. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/Bars.d.ts +0 -0
  95. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/BarsDiverging.d.ts +0 -0
  96. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/BarsTriangle.d.ts +0 -0
  97. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/Dots.d.ts +0 -0
  98. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/GridLegend.d.ts +0 -0
  99. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/GroupAux.d.ts +0 -0
  100. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/GroupAxis.d.ts +0 -0
  101. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/LineAreas.d.ts +0 -0
  102. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/Lines.d.ts +0 -0
  103. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/Ranking.d.ts +0 -0
  104. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/RankingAxis.d.ts +0 -0
  105. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/ScalingArea.d.ts +0 -0
  106. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/ValueAxis.d.ts +0 -0
  107. /package/dist/{orbcharts-plugins-basic/src → src}/grid/plugins/ValueStackAxis.d.ts +0 -0
  108. /package/dist/{orbcharts-plugins-basic/src → src}/grid/types.d.ts +0 -0
  109. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/defaults.d.ts +0 -0
  110. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/index.d.ts +0 -0
  111. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/multiGridObservables.d.ts +0 -0
  112. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiBarStack.d.ts +0 -0
  113. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiBars.d.ts +0 -0
  114. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiBarsTriangle.d.ts +0 -0
  115. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiDots.d.ts +0 -0
  116. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiGridLegend.d.ts +0 -0
  117. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiGroupAxis.d.ts +0 -0
  118. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiLineAreas.d.ts +0 -0
  119. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiLines.d.ts +0 -0
  120. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/MultiValueAxis.d.ts +0 -0
  121. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/plugins/OverlappingValueAxes.d.ts +0 -0
  122. /package/dist/{orbcharts-plugins-basic/src → src}/multiGrid/types.d.ts +0 -0
  123. /package/dist/{orbcharts-plugins-basic/src → src}/multiValue/index.d.ts +0 -0
  124. /package/dist/{orbcharts-plugins-basic/src → src}/multiValue/plugins/Scatter.d.ts +0 -0
  125. /package/dist/{orbcharts-plugins-basic/src → src}/multiValue/plugins/ScatterAxes.d.ts +0 -0
  126. /package/dist/{orbcharts-plugins-basic/src → src}/noneData/defaults.d.ts +0 -0
  127. /package/dist/{orbcharts-plugins-basic/src → src}/noneData/index.d.ts +0 -0
  128. /package/dist/{orbcharts-plugins-basic/src → src}/noneData/plugins/Container.d.ts +0 -0
  129. /package/dist/{orbcharts-plugins-basic/src → src}/noneData/plugins/Tooltip.d.ts +0 -0
  130. /package/dist/{orbcharts-plugins-basic/src → src}/noneData/types.d.ts +0 -0
  131. /package/dist/{orbcharts-plugins-basic/src → src}/relationship/index.d.ts +0 -0
  132. /package/dist/{orbcharts-plugins-basic/src → src}/relationship/plugins/Relationship.d.ts +0 -0
  133. /package/dist/{orbcharts-plugins-basic/src → src}/series/defaults.d.ts +0 -0
  134. /package/dist/{orbcharts-plugins-basic/src → src}/series/index.d.ts +0 -0
  135. /package/dist/{orbcharts-plugins-basic/src → src}/series/plugins/Bubbles.d.ts +0 -0
  136. /package/dist/{orbcharts-plugins-basic/src → src}/series/plugins/Pie.d.ts +0 -0
  137. /package/dist/{orbcharts-plugins-basic/src → src}/series/plugins/PieEventTexts.d.ts +0 -0
  138. /package/dist/{orbcharts-plugins-basic/src → src}/series/plugins/PieLabels.d.ts +0 -0
  139. /package/dist/{orbcharts-plugins-basic/src → src}/series/plugins/SeriesLegend.d.ts +0 -0
  140. /package/dist/{orbcharts-plugins-basic/src → src}/series/plugins/Waffle.d.ts +0 -0
  141. /package/dist/{orbcharts-plugins-basic/src → src}/series/seriesUtils.d.ts +0 -0
  142. /package/dist/{orbcharts-plugins-basic/src → src}/series/types.d.ts +0 -0
  143. /package/dist/{orbcharts-plugins-basic/src → src}/tree/defaults.d.ts +0 -0
  144. /package/dist/{orbcharts-plugins-basic/src → src}/tree/index.d.ts +0 -0
  145. /package/dist/{orbcharts-plugins-basic/src → src}/tree/plugins/TreeLegend.d.ts +0 -0
  146. /package/dist/{orbcharts-plugins-basic/src → src}/tree/plugins/TreeMap.d.ts +0 -0
  147. /package/dist/{orbcharts-plugins-basic/src → src}/tree/types.d.ts +0 -0
  148. /package/dist/{orbcharts-plugins-basic/src → src}/utils/commonUtils.d.ts +0 -0
  149. /package/dist/{orbcharts-plugins-basic/src → src}/utils/d3Graphics.d.ts +0 -0
  150. /package/dist/{orbcharts-plugins-basic/src → src}/utils/d3Utils.d.ts +0 -0
  151. /package/dist/{orbcharts-plugins-basic/src → src}/utils/observables.d.ts +0 -0
  152. /package/dist/{orbcharts-plugins-basic/src → src}/utils/orbchartsUtils.d.ts +0 -0
  153. /package/dist/{orbcharts-plugins-basic/vite.config.d.ts → vite.config.d.ts} +0 -0
@@ -1,65 +1,69 @@
1
- import * as d3 from 'd3'
2
- import {
3
- Subject,
4
- map,
5
- distinctUntilChanged,
6
- shareReplay,
7
- takeUntil
8
- } from 'rxjs'
9
- import {
10
- defineMultiGridPlugin } from '@orbcharts/core'
11
- import { DEFAULT_MULTI_GROUP_AXIS_PARAMS } from '../defaults'
12
- import { createBaseGroupAxis } from '../../base/BaseGroupAxis'
13
- import { multiGridPluginObservables } from '../multiGridObservables'
14
- import { getClassName, getUniID } from '../../utils/orbchartsUtils'
15
-
16
- const pluginName = 'MultiGroupAxis'
17
-
18
- const gridClassName = getClassName(pluginName, 'grid')
19
-
20
- export const MultiGroupAxis = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_GROUP_AXIS_PARAMS)(({ selection, name, subject, observer }) => {
21
- const destroy$ = new Subject()
22
-
23
- const unsubscribeFnArr: (() => void)[] = []
24
-
25
- const multiGridPlugin$ = multiGridPluginObservables(observer)
26
-
27
- multiGridPlugin$.subscribe(data => {
28
- // 每次重新計算時,清除之前的訂閱
29
- unsubscribeFnArr.forEach(fn => fn())
30
-
31
- selection.selectAll(`g.${gridClassName}`)
32
- .data(data)
33
- .join('g')
34
- .attr('class', gridClassName)
35
- .each((d, i, g) => {
36
-
37
- const gridSelection = d3.select(g[i])
38
-
39
- const isSeriesSeprate$ = d.dataFormatter$.pipe(
40
- takeUntil(destroy$),
41
- map(d => d.grid.separateSeries),
42
- distinctUntilChanged(),
43
- shareReplay(1)
44
- )
45
-
46
- unsubscribeFnArr[i] = createBaseGroupAxis(pluginName, {
47
- selection: gridSelection,
48
- computedData$: d.computedData$,
49
- fullParams$: observer.fullParams$,
50
- fullDataFormatter$: d.dataFormatter$,
51
- fullChartParams$: observer.fullChartParams$,
52
- gridAxesTransform$: d.gridAxesTransform$,
53
- gridAxesReverseTransform$: d.gridAxesReverseTransform$,
54
- gridAxesSize$: d.gridAxesSize$,
55
- gridContainerPosition$: d.gridContainerPosition$,
56
- isSeriesSeprate$,
57
- })
58
- })
59
- })
60
-
61
- return () => {
62
- destroy$.next(undefined)
63
- unsubscribeFnArr.forEach(fn => fn())
64
- }
65
- })
1
+ import * as d3 from 'd3'
2
+ import {
3
+ Subject,
4
+ map,
5
+ distinctUntilChanged,
6
+ shareReplay,
7
+ takeUntil
8
+ } from 'rxjs'
9
+ import {
10
+ defineMultiGridPlugin } from '@orbcharts/core'
11
+ import { DEFAULT_MULTI_GROUP_AXIS_PARAMS } from '../defaults'
12
+ import { createBaseGroupAxis } from '../../base/BaseGroupAxis'
13
+ import { multiGridPluginObservables } from '../multiGridObservables'
14
+ import { getClassName, getUniID } from '../../utils/orbchartsUtils'
15
+
16
+ const pluginName = 'MultiGroupAxis'
17
+
18
+ const gridClassName = getClassName(pluginName, 'grid')
19
+
20
+ export const MultiGroupAxis = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_GROUP_AXIS_PARAMS)(({ selection, name, subject, observer }) => {
21
+ const destroy$ = new Subject()
22
+
23
+ const unsubscribeFnArr: (() => void)[] = []
24
+
25
+ const multiGridPlugin$ = multiGridPluginObservables(observer)
26
+
27
+ multiGridPlugin$
28
+ .pipe(
29
+ takeUntil(destroy$)
30
+ )
31
+ .subscribe(data => {
32
+ // 每次重新計算時,清除之前的訂閱
33
+ unsubscribeFnArr.forEach(fn => fn())
34
+
35
+ selection.selectAll(`g.${gridClassName}`)
36
+ .data(data)
37
+ .join('g')
38
+ .attr('class', gridClassName)
39
+ .each((d, i, g) => {
40
+
41
+ const gridSelection = d3.select(g[i])
42
+
43
+ const isSeriesSeprate$ = d.dataFormatter$.pipe(
44
+ takeUntil(destroy$),
45
+ map(d => d.grid.separateSeries),
46
+ distinctUntilChanged(),
47
+ shareReplay(1)
48
+ )
49
+
50
+ unsubscribeFnArr[i] = createBaseGroupAxis(pluginName, {
51
+ selection: gridSelection,
52
+ computedData$: d.computedData$,
53
+ fullParams$: observer.fullParams$,
54
+ fullDataFormatter$: d.dataFormatter$,
55
+ fullChartParams$: observer.fullChartParams$,
56
+ gridAxesTransform$: d.gridAxesTransform$,
57
+ gridAxesReverseTransform$: d.gridAxesReverseTransform$,
58
+ gridAxesSize$: d.gridAxesSize$,
59
+ gridContainerPosition$: d.gridContainerPosition$,
60
+ isSeriesSeprate$,
61
+ })
62
+ })
63
+ })
64
+
65
+ return () => {
66
+ destroy$.next(undefined)
67
+ unsubscribeFnArr.forEach(fn => fn())
68
+ }
69
+ })
@@ -1,62 +1,67 @@
1
- import * as d3 from 'd3'
2
- import {
3
- Subject } from 'rxjs'
4
- import {
5
- defineMultiGridPlugin } from '@orbcharts/core'
6
-
7
- import { DEFAULT_MULTI_LINE_AREAS_PARAMS } from '../defaults'
8
- import { createBaseLineAreas } from '../../base/BaseLineAreas'
9
- import { multiGridPluginObservables } from '../multiGridObservables'
10
- import { getClassName, getUniID } from '../../utils/orbchartsUtils'
11
-
12
- const pluginName = 'MultiLineAreas'
13
-
14
- const gridClassName = getClassName(pluginName, 'grid')
15
-
16
- export const MultiLineAreas = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_LINE_AREAS_PARAMS)(({ selection, name, subject, observer }) => {
17
- const destroy$ = new Subject()
18
-
19
- const unsubscribeFnArr: (() => void)[] = []
20
-
21
- const multiGridPlugin$ = multiGridPluginObservables(observer)
22
-
23
- multiGridPlugin$.subscribe(data => {
24
- // 每次重新計算時,清除之前的訂閱
25
- unsubscribeFnArr.forEach(fn => fn())
26
-
27
- selection.selectAll(`g.${gridClassName}`)
28
- .data(data)
29
- .join('g')
30
- .attr('class', gridClassName)
31
- .each((d, i, g) => {
32
-
33
- const gridSelection = d3.select(g[i])
34
-
35
- unsubscribeFnArr[i] = createBaseLineAreas(pluginName, {
36
- selection: gridSelection,
37
- computedData$: d.computedData$,
38
- computedLayoutData$: d.computedLayoutData$,
39
- visibleComputedData$: d.visibleComputedData$,
40
- visibleComputedLayoutData$: d.visibleComputedLayoutData$,
41
- seriesLabels$: d.seriesLabels$,
42
- SeriesDataMap$: d.SeriesDataMap$,
43
- GroupDataMap$: d.GroupDataMap$,
44
- fullDataFormatter$: d.dataFormatter$,
45
- fullParams$: observer.fullParams$,
46
- fullChartParams$: observer.fullChartParams$,
47
- gridAxesTransform$: d.gridAxesTransform$,
48
- gridGraphicTransform$: d.gridGraphicTransform$,
49
- gridAxesSize$: d.gridAxesSize$,
50
- gridHighlight$: d.gridHighlight$,
51
- gridContainerPosition$: d.gridContainerPosition$,
52
- layout$: observer.layout$,
53
- event$: subject.event$ as Subject<any>,
54
- })
55
- })
56
- })
57
-
58
- return () => {
59
- destroy$.next(undefined)
60
- unsubscribeFnArr.forEach(fn => fn())
61
- }
62
- })
1
+ import * as d3 from 'd3'
2
+ import {
3
+ takeUntil,
4
+ Subject } from 'rxjs'
5
+ import {
6
+ defineMultiGridPlugin } from '@orbcharts/core'
7
+
8
+ import { DEFAULT_MULTI_LINE_AREAS_PARAMS } from '../defaults'
9
+ import { createBaseLineAreas } from '../../base/BaseLineAreas'
10
+ import { multiGridPluginObservables } from '../multiGridObservables'
11
+ import { getClassName, getUniID } from '../../utils/orbchartsUtils'
12
+
13
+ const pluginName = 'MultiLineAreas'
14
+
15
+ const gridClassName = getClassName(pluginName, 'grid')
16
+
17
+ export const MultiLineAreas = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_LINE_AREAS_PARAMS)(({ selection, name, subject, observer }) => {
18
+ const destroy$ = new Subject()
19
+
20
+ const unsubscribeFnArr: (() => void)[] = []
21
+
22
+ const multiGridPlugin$ = multiGridPluginObservables(observer)
23
+
24
+ multiGridPlugin$
25
+ .pipe(
26
+ takeUntil(destroy$)
27
+ )
28
+ .subscribe(data => {
29
+ // 每次重新計算時,清除之前的訂閱
30
+ unsubscribeFnArr.forEach(fn => fn())
31
+
32
+ selection.selectAll(`g.${gridClassName}`)
33
+ .data(data)
34
+ .join('g')
35
+ .attr('class', gridClassName)
36
+ .each((d, i, g) => {
37
+
38
+ const gridSelection = d3.select(g[i])
39
+
40
+ unsubscribeFnArr[i] = createBaseLineAreas(pluginName, {
41
+ selection: gridSelection,
42
+ computedData$: d.computedData$,
43
+ computedLayoutData$: d.computedLayoutData$,
44
+ visibleComputedData$: d.visibleComputedData$,
45
+ visibleComputedLayoutData$: d.visibleComputedLayoutData$,
46
+ seriesLabels$: d.seriesLabels$,
47
+ SeriesDataMap$: d.SeriesDataMap$,
48
+ GroupDataMap$: d.GroupDataMap$,
49
+ fullDataFormatter$: d.dataFormatter$,
50
+ fullParams$: observer.fullParams$,
51
+ fullChartParams$: observer.fullChartParams$,
52
+ gridAxesTransform$: d.gridAxesTransform$,
53
+ gridGraphicTransform$: d.gridGraphicTransform$,
54
+ gridAxesSize$: d.gridAxesSize$,
55
+ gridHighlight$: d.gridHighlight$,
56
+ gridContainerPosition$: d.gridContainerPosition$,
57
+ layout$: observer.layout$,
58
+ event$: subject.event$ as Subject<any>,
59
+ })
60
+ })
61
+ })
62
+
63
+ return () => {
64
+ destroy$.next(undefined)
65
+ unsubscribeFnArr.forEach(fn => fn())
66
+ }
67
+ })
@@ -1,61 +1,66 @@
1
- import * as d3 from 'd3'
2
- import {
3
- Subject } from 'rxjs'
4
- import {
5
- defineMultiGridPlugin } from '@orbcharts/core'
6
-
7
- import { DEFAULT_MULTI_LINES_PARAMS } from '../defaults'
8
- import { createBaseLines } from '../../base/BaseLines'
9
- import { multiGridPluginObservables } from '../multiGridObservables'
10
- import { getClassName, getUniID } from '../../utils/orbchartsUtils'
11
-
12
- const pluginName = 'MultiLines'
13
-
14
- const gridClassName = getClassName(pluginName, 'grid')
15
-
16
- export const MultiLines = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_LINES_PARAMS)(({ selection, name, subject, observer }) => {
17
- const destroy$ = new Subject()
18
-
19
- const unsubscribeFnArr: (() => void)[] = []
20
-
21
- const multiGridPlugin$ = multiGridPluginObservables(observer)
22
-
23
- multiGridPlugin$.subscribe(data => {
24
- // 每次重新計算時,清除之前的訂閱
25
- unsubscribeFnArr.forEach(fn => fn())
26
-
27
- selection.selectAll(`g.${gridClassName}`)
28
- .data(data)
29
- .join('g')
30
- .attr('class', gridClassName)
31
- .each((d, i, g) => {
32
-
33
- const gridSelection = d3.select(g[i])
34
-
35
- unsubscribeFnArr[i] = createBaseLines(pluginName, {
36
- selection: gridSelection,
37
- computedData$: d.computedData$,
38
- computedLayoutData$: d.computedLayoutData$,
39
- visibleComputedData$: d.visibleComputedData$,
40
- visibleComputedLayoutData$: d.visibleComputedLayoutData$,
41
- seriesLabels$: d.seriesLabels$,
42
- SeriesDataMap$: d.SeriesDataMap$,
43
- GroupDataMap$: d.GroupDataMap$,
44
- fullDataFormatter$: d.dataFormatter$,
45
- fullParams$: observer.fullParams$,
46
- fullChartParams$: observer.fullChartParams$,
47
- gridAxesTransform$: d.gridAxesTransform$,
48
- gridGraphicTransform$: d.gridGraphicTransform$,
49
- gridAxesSize$: d.gridAxesSize$,
50
- gridHighlight$: d.gridHighlight$,
51
- gridContainerPosition$: d.gridContainerPosition$,
52
- event$: subject.event$ as Subject<any>,
53
- })
54
- })
55
- })
56
-
57
- return () => {
58
- destroy$.next(undefined)
59
- unsubscribeFnArr.forEach(fn => fn())
60
- }
61
- })
1
+ import * as d3 from 'd3'
2
+ import {
3
+ takeUntil,
4
+ Subject } from 'rxjs'
5
+ import {
6
+ defineMultiGridPlugin } from '@orbcharts/core'
7
+
8
+ import { DEFAULT_MULTI_LINES_PARAMS } from '../defaults'
9
+ import { createBaseLines } from '../../base/BaseLines'
10
+ import { multiGridPluginObservables } from '../multiGridObservables'
11
+ import { getClassName, getUniID } from '../../utils/orbchartsUtils'
12
+
13
+ const pluginName = 'MultiLines'
14
+
15
+ const gridClassName = getClassName(pluginName, 'grid')
16
+
17
+ export const MultiLines = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_LINES_PARAMS)(({ selection, name, subject, observer }) => {
18
+ const destroy$ = new Subject()
19
+
20
+ const unsubscribeFnArr: (() => void)[] = []
21
+
22
+ const multiGridPlugin$ = multiGridPluginObservables(observer)
23
+
24
+ multiGridPlugin$
25
+ .pipe(
26
+ takeUntil(destroy$)
27
+ )
28
+ .subscribe(data => {
29
+ // 每次重新計算時,清除之前的訂閱
30
+ unsubscribeFnArr.forEach(fn => fn())
31
+
32
+ selection.selectAll(`g.${gridClassName}`)
33
+ .data(data)
34
+ .join('g')
35
+ .attr('class', gridClassName)
36
+ .each((d, i, g) => {
37
+
38
+ const gridSelection = d3.select(g[i])
39
+
40
+ unsubscribeFnArr[i] = createBaseLines(pluginName, {
41
+ selection: gridSelection,
42
+ computedData$: d.computedData$,
43
+ computedLayoutData$: d.computedLayoutData$,
44
+ visibleComputedData$: d.visibleComputedData$,
45
+ visibleComputedLayoutData$: d.visibleComputedLayoutData$,
46
+ seriesLabels$: d.seriesLabels$,
47
+ SeriesDataMap$: d.SeriesDataMap$,
48
+ GroupDataMap$: d.GroupDataMap$,
49
+ fullDataFormatter$: d.dataFormatter$,
50
+ fullParams$: observer.fullParams$,
51
+ fullChartParams$: observer.fullChartParams$,
52
+ gridAxesTransform$: d.gridAxesTransform$,
53
+ gridGraphicTransform$: d.gridGraphicTransform$,
54
+ gridAxesSize$: d.gridAxesSize$,
55
+ gridHighlight$: d.gridHighlight$,
56
+ gridContainerPosition$: d.gridContainerPosition$,
57
+ event$: subject.event$ as Subject<any>,
58
+ })
59
+ })
60
+ })
61
+
62
+ return () => {
63
+ destroy$.next(undefined)
64
+ unsubscribeFnArr.forEach(fn => fn())
65
+ }
66
+ })
@@ -1,65 +1,69 @@
1
- import * as d3 from 'd3'
2
- import {
3
- Subject,
4
- map,
5
- distinctUntilChanged,
6
- shareReplay,
7
- takeUntil
8
- } from 'rxjs'
9
- import {
10
- defineMultiGridPlugin } from '@orbcharts/core'
11
- import { DEFAULT_MULTI_VALUE_AXIS_PARAMS } from '../defaults'
12
- import { createBaseValueAxis } from '../../base/BaseValueAxis'
13
- import { multiGridPluginObservables } from '../multiGridObservables'
14
- import { getClassName, getUniID } from '../../utils/orbchartsUtils'
15
-
16
- const pluginName = 'MultiValueAxis'
17
-
18
- const gridClassName = getClassName(pluginName, 'grid')
19
-
20
- export const MultiValueAxis = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_VALUE_AXIS_PARAMS)(({ selection, name, subject, observer }) => {
21
- const destroy$ = new Subject()
22
-
23
- const unsubscribeFnArr: (() => void)[] = []
24
-
25
- const multiGridPlugin$ = multiGridPluginObservables(observer)
26
-
27
- multiGridPlugin$.subscribe(data => {
28
- // 每次重新計算時,清除之前的訂閱
29
- unsubscribeFnArr.forEach(fn => fn())
30
-
31
- selection.selectAll(`g.${gridClassName}`)
32
- .data(data)
33
- .join('g')
34
- .attr('class', gridClassName)
35
- .each((d, i, g) => {
36
-
37
- const gridSelection = d3.select(g[i])
38
-
39
- const isSeriesSeprate$ = d.dataFormatter$.pipe(
40
- takeUntil(destroy$),
41
- map(d => d.grid.separateSeries),
42
- distinctUntilChanged(),
43
- shareReplay(1)
44
- )
45
-
46
- unsubscribeFnArr[i] = createBaseValueAxis(pluginName, {
47
- selection: gridSelection,
48
- computedData$: d.computedData$,
49
- fullParams$: observer.fullParams$,
50
- fullDataFormatter$: d.dataFormatter$,
51
- fullChartParams$: observer.fullChartParams$,
52
- gridAxesTransform$: d.gridAxesTransform$,
53
- gridAxesReverseTransform$: d.gridAxesReverseTransform$,
54
- gridAxesSize$: d.gridAxesSize$,
55
- gridContainerPosition$: d.gridContainerPosition$,
56
- isSeriesSeprate$,
57
- })
58
- })
59
- })
60
-
61
- return () => {
62
- destroy$.next(undefined)
63
- unsubscribeFnArr.forEach(fn => fn())
64
- }
65
- })
1
+ import * as d3 from 'd3'
2
+ import {
3
+ Subject,
4
+ map,
5
+ distinctUntilChanged,
6
+ shareReplay,
7
+ takeUntil
8
+ } from 'rxjs'
9
+ import {
10
+ defineMultiGridPlugin } from '@orbcharts/core'
11
+ import { DEFAULT_MULTI_VALUE_AXIS_PARAMS } from '../defaults'
12
+ import { createBaseValueAxis } from '../../base/BaseValueAxis'
13
+ import { multiGridPluginObservables } from '../multiGridObservables'
14
+ import { getClassName, getUniID } from '../../utils/orbchartsUtils'
15
+
16
+ const pluginName = 'MultiValueAxis'
17
+
18
+ const gridClassName = getClassName(pluginName, 'grid')
19
+
20
+ export const MultiValueAxis = defineMultiGridPlugin(pluginName, DEFAULT_MULTI_VALUE_AXIS_PARAMS)(({ selection, name, subject, observer }) => {
21
+ const destroy$ = new Subject()
22
+
23
+ const unsubscribeFnArr: (() => void)[] = []
24
+
25
+ const multiGridPlugin$ = multiGridPluginObservables(observer)
26
+
27
+ multiGridPlugin$
28
+ .pipe(
29
+ takeUntil(destroy$)
30
+ )
31
+ .subscribe(data => {
32
+ // 每次重新計算時,清除之前的訂閱
33
+ unsubscribeFnArr.forEach(fn => fn())
34
+
35
+ selection.selectAll(`g.${gridClassName}`)
36
+ .data(data)
37
+ .join('g')
38
+ .attr('class', gridClassName)
39
+ .each((d, i, g) => {
40
+
41
+ const gridSelection = d3.select(g[i])
42
+
43
+ const isSeriesSeprate$ = d.dataFormatter$.pipe(
44
+ takeUntil(destroy$),
45
+ map(d => d.grid.separateSeries),
46
+ distinctUntilChanged(),
47
+ shareReplay(1)
48
+ )
49
+
50
+ unsubscribeFnArr[i] = createBaseValueAxis(pluginName, {
51
+ selection: gridSelection,
52
+ computedData$: d.computedData$,
53
+ fullParams$: observer.fullParams$,
54
+ fullDataFormatter$: d.dataFormatter$,
55
+ fullChartParams$: observer.fullChartParams$,
56
+ gridAxesTransform$: d.gridAxesTransform$,
57
+ gridAxesReverseTransform$: d.gridAxesReverseTransform$,
58
+ gridAxesSize$: d.gridAxesSize$,
59
+ gridContainerPosition$: d.gridContainerPosition$,
60
+ isSeriesSeprate$,
61
+ })
62
+ })
63
+ })
64
+
65
+ return () => {
66
+ destroy$.next(undefined)
67
+ unsubscribeFnArr.forEach(fn => fn())
68
+ }
69
+ })