File tree 4 files changed +73
-5
lines changed
common/changes/@visactor/vchart
plugin/components/tooltip-handler
4 files changed +73
-5
lines changed Original file line number Diff line number Diff line change
1
+ {
2
+ "changes" : [
3
+ {
4
+ "comment" : " feat: tooltip support inside position\n\n " ,
5
+ "type" : " none" ,
6
+ "packageName" : " @visactor/vchart"
7
+ }
8
+ ],
9
+ "packageName" : " @visactor/vchart" ,
10
+
11
+ }
Original file line number Diff line number Diff line change @@ -322,6 +322,9 @@ export abstract class BaseTooltipHandler extends BasePlugin implements ITooltipH
322
322
case - 2 :
323
323
calcPos [ posKey ] = dim1 - boxSize * tooltipSizeScale - dimOffset ;
324
324
break ;
325
+ case - 1.5 :
326
+ calcPos [ posKey ] = dim1 + dimOffset ;
327
+ break ;
325
328
case 0 :
326
329
calcPos [ posKey ] = ( dim1 + dim2 ) / 2 - ( boxSize * tooltipSizeScale ) / 2 ;
327
330
break ;
@@ -331,6 +334,9 @@ export abstract class BaseTooltipHandler extends BasePlugin implements ITooltipH
331
334
case 1 :
332
335
calcPos [ posKey ] = ( dim1 + dim2 ) / 2 + dimOffset ;
333
336
break ;
337
+ case 1.5 :
338
+ calcPos [ posKey ] = dim2 - boxSize * tooltipSizeScale - dimOffset ;
339
+ break ;
334
340
case 2 :
335
341
calcPos [ posKey ] = dim2 + dimOffset ;
336
342
break ;
Original file line number Diff line number Diff line change @@ -32,20 +32,31 @@ export const getActualTooltipPositionValue = (
32
32
return result ;
33
33
} ;
34
34
35
- // 'left' | 'centerLeft' | 'center' | 'centerRight' | 'right'
36
- // 'top' | 'centerTop' | 'center' | 'centerBottom' | 'bottom'
37
- export type TooltipPositionType = - 2 | - 1 | 0 | 1 | 2 ;
35
+ // 'left' | 'innerLeft' | ' centerLeft' | 'center' | 'centerRight' | 'innerRight' | 'right'
36
+ // 'top' | 'innerTop' | ' centerTop' | 'center' | 'centerBottom' | 'innerBottom ' | 'bottom'
37
+ export type TooltipPositionType = - 2 | - 1.5 | - 1 | 0 | 1 | 1.5 | 2 ;
38
38
39
39
/** position 对齐方式在 x、y 分量下的分解 */
40
40
export const positionType : Record < TooltipFixedPosition , [ TooltipPositionType , TooltipPositionType ] > = {
41
41
left : [ - 2 , 0 ] ,
42
42
right : [ 2 , 0 ] ,
43
43
top : [ 0 , - 2 ] ,
44
+ bottom : [ 0 , 2 ] ,
45
+
46
+ insideTop : [ 0 , - 1.5 ] ,
47
+ insideBottom : [ 0 , 1.5 ] ,
48
+ insideLeft : [ - 1.5 , 0 ] ,
49
+ insideRight : [ 1.5 , 0 ] ,
50
+
51
+ insideTopLeft : [ - 1.5 , - 1.5 ] ,
52
+ insideTopRight : [ 1.5 , - 1.5 ] ,
53
+ insideBottomLeft : [ - 1.5 , 1.5 ] ,
54
+ insideBottomRight : [ 1.5 , 1.5 ] ,
55
+
44
56
lt : [ - 2 , - 2 ] ,
45
57
tl : [ - 2 , - 2 ] ,
46
58
rt : [ 2 , - 2 ] ,
47
59
tr : [ 2 , - 2 ] ,
48
- bottom : [ 0 , 2 ] ,
49
60
bl : [ - 2 , 2 ] ,
50
61
lb : [ - 2 , 2 ] ,
51
62
br : [ 2 , 2 ] ,
Original file line number Diff line number Diff line change @@ -89,7 +89,47 @@ export type TooltipFixedPosition =
89
89
*/
90
90
| 'centerRight'
91
91
/** tooltip 显示在鼠标所在图形中心位置(旧版兼容,建议用 `'center'`) */
92
- | 'inside' ;
92
+ | 'inside'
93
+ /**
94
+ * tooltip 显示在鼠标所在图形的内侧顶部
95
+ * @since 1.13.10
96
+ */
97
+ | 'insideTop'
98
+ /**
99
+ * tooltip 显示在鼠标所在图形的内侧底部
100
+ * @since 1.13.10
101
+ */
102
+ | 'insideBottom'
103
+ /**
104
+ * tooltip 显示在鼠标所在图形的内侧左侧
105
+ * @since 1.13.10
106
+ */
107
+ | 'insideLeft'
108
+ /**
109
+ * tooltip 显示在鼠标所在图形的内侧右侧
110
+ * @since 1.13.10
111
+ */
112
+ | 'insideRight'
113
+ /**
114
+ * tooltip 显示在鼠标所在图形的内侧左上角
115
+ * @since 1.13.10
116
+ */
117
+ | 'insideTopLeft'
118
+ /**
119
+ * tooltip 显示在鼠标所在图形的内侧右上角
120
+ * @since 1.13.10
121
+ */
122
+ | 'insideTopRight'
123
+ /**
124
+ * tooltip 显示在鼠标所在图形的内侧左下角
125
+ * @since 1.13.10
126
+ */
127
+ | 'insideBottomLeft'
128
+ /**
129
+ * tooltip 显示在鼠标所在图形的内侧右下角
130
+ * @since 1.13.10
131
+ */
132
+ | 'insideBottomRight' ;
93
133
94
134
export type TooltipPositionMode =
95
135
/** tooltip 固定在鼠标指针附近 */
You can’t perform that action at this time.
0 commit comments