Toggle series visibility from chart legend (pie charts) (#47581)
* Add series visibility props to `ChartWithLegend` * Mark pie slices as visible or hidden * Don't let to hide the last visible slice * Add space between legend dot and title * Fix legend dot outer circle is clipped by overflow * Use `ChartSettingSeriesOrder` for `pie.rows` setting * Actually hide slices and exclude from total calc * Don't show "0%" next to hidden slice legend items * Hide the "Other" slice * Make overflow slices popover interactive * Fix hover * Fix incorrect visibility state in legend popover * Add e2e test * Remove debug stuff * Fix hover and drill issues with slice index calc * Fix `pie.rows` ordering bug * Revert "Fix hover and drill issues with slice index calc" This reverts commit f104aaa5. * Fix hover and drill issues with slice index calc (2) `dataIndex` based approach * Use a special data key for the "Other" slice * Fixed viewport size in legend e2e test * Fix jumping legend width * Fix dot and label vertical alignment * Rework pie e2e test * Fix legend dot and label alignment
Showing
- e2e/test/scenarios/visualizations-charts/legend.cy.spec.js 54 additions, 0 deletionse2e/test/scenarios/visualizations-charts/legend.cy.spec.js
- frontend/src/metabase/static-viz/components/PieChart/PieChart.tsx 1 addition, 0 deletions.../src/metabase/static-viz/components/PieChart/PieChart.tsx
- frontend/src/metabase/static-viz/components/PieChart/legend.tsx 11 additions, 20 deletions...nd/src/metabase/static-viz/components/PieChart/legend.tsx
- frontend/src/metabase/visualizations/components/ChartWithLegend.jsx 4 additions, 0 deletions...rc/metabase/visualizations/components/ChartWithLegend.jsx
- frontend/src/metabase/visualizations/components/LegendHorizontal.jsx 37 additions, 11 deletions...c/metabase/visualizations/components/LegendHorizontal.jsx
- frontend/src/metabase/visualizations/components/LegendItem.jsx 19 additions, 13 deletions...end/src/metabase/visualizations/components/LegendItem.jsx
- frontend/src/metabase/visualizations/components/LegendVertical.jsx 93 additions, 37 deletions...src/metabase/visualizations/components/LegendVertical.jsx
- frontend/src/metabase/visualizations/components/legend/LegendItemDot.tsx 8 additions, 7 deletions...tabase/visualizations/components/legend/LegendItemDot.tsx
- frontend/src/metabase/visualizations/components/settings/ChartSettingSeriesOrder.tsx 9 additions, 2 deletions...lizations/components/settings/ChartSettingSeriesOrder.tsx
- frontend/src/metabase/visualizations/echarts/pie/constants.ts 1 addition, 1 deletion...tend/src/metabase/visualizations/echarts/pie/constants.ts
- frontend/src/metabase/visualizations/echarts/pie/model/index.ts 27 additions, 10 deletions...nd/src/metabase/visualizations/echarts/pie/model/index.ts
- frontend/src/metabase/visualizations/echarts/pie/model/types.ts 1 addition, 0 deletions...nd/src/metabase/visualizations/echarts/pie/model/types.ts
- frontend/src/metabase/visualizations/echarts/pie/option.ts 44 additions, 42 deletionsfrontend/src/metabase/visualizations/echarts/pie/option.ts
- frontend/src/metabase/visualizations/visualizations/PieChart/PieChart.tsx 42 additions, 4 deletions...abase/visualizations/visualizations/PieChart/PieChart.tsx
- frontend/src/metabase/visualizations/visualizations/PieChart/chart-definition.ts 2 additions, 2 deletions...isualizations/visualizations/PieChart/chart-definition.ts
- frontend/src/metabase/visualizations/visualizations/PieChart/use-chart-events.ts 33 additions, 17 deletions...isualizations/visualizations/PieChart/use-chart-events.ts
Please register or sign in to comment