Skip to content

Commit fa3f57e

Browse files
committed
feat: chart label & tooltip
1 parent 6c3c612 commit fa3f57e

File tree

4 files changed

+44
-8
lines changed

4 files changed

+44
-8
lines changed

frontend/src/views/chat/component/charts/Bar.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,18 @@ export class Bar extends BaseG2Chart {
3434
nice: true,
3535
})
3636
.interaction('elementHighlight', { background: true })
37+
.tooltip((data) => {
38+
if (series.length > 0) {
39+
return { name: data[series[0].value], value: data[y[0].value] }
40+
} else {
41+
return { name: y[0].name, value: data[y[0].value] }
42+
}
43+
})
44+
.label({
45+
text: y[0].value,
46+
position: 'inside',
47+
transform: [{ type: 'overlapDodgeY' }],
48+
})
3749

3850
if (series.length > 0) {
3951
this.chart?.encode('color', series[0].value).transform({ type: 'stackY' })

frontend/src/views/chat/component/charts/Column.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,18 @@ export class Column extends BaseG2Chart {
3333
nice: true,
3434
})
3535
.interaction('elementHighlight', { background: true })
36+
.tooltip((data) => {
37+
if (series.length > 0) {
38+
return { name: data[series[0].value], value: data[y[0].value] }
39+
} else {
40+
return { name: y[0].name, value: data[y[0].value] }
41+
}
42+
})
43+
.label({
44+
text: y[0].value,
45+
position: 'inside',
46+
transform: [{ type: 'overlapDodgeY' }],
47+
})
3648

3749
if (series.length > 0) {
3850
this.chart?.encode('color', series[0].value).transform({ type: 'stackY' })

frontend/src/views/chat/component/charts/Line.ts

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,23 @@ export class Line extends BaseG2Chart {
3636
this.chart?.encode('color', series[0].value)
3737
}
3838

39-
this.chart?.line().label({
40-
text: y[0].value,
41-
style: {
42-
dx: -10,
43-
dy: -12,
44-
},
45-
transform: [{ type: 'overlapDodgeY' }, { type: 'exceedAdjust' }, { type: 'overlapHide' }],
46-
})
39+
this.chart
40+
?.line()
41+
.label({
42+
text: y[0].value,
43+
style: {
44+
dx: -10,
45+
dy: -12,
46+
},
47+
transform: [{ type: 'overlapDodgeY' }, { type: 'exceedAdjust' }, { type: 'overlapHide' }],
48+
})
49+
.tooltip((data) => {
50+
if (series.length > 0) {
51+
return { name: data[series[0].value], value: data[y[0].value] }
52+
} else {
53+
return { name: y[0].name, value: data[y[0].value] }
54+
}
55+
})
4756

4857
this.chart?.point().style('fill', 'white').tooltip(false)
4958
}

frontend/src/views/chat/component/charts/Pie.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,8 @@ export class Pie extends BaseG2Chart {
2424
.encode('y', y[0].value)
2525
.encode('color', series[0].value)
2626
.legend('color', { position: 'bottom', layout: { justifyContent: 'center' } })
27+
.tooltip((data) => {
28+
return { name: y[0].name, value: data[y[0].value] }
29+
})
2730
}
2831
}

0 commit comments

Comments
 (0)