o-spreadsheet
o-spreadsheet copied to clipboard
[IMP] chart: avoid overlapping values on charts
Description
The option "Show Values" on charts could lead to overlapping texts in the chart, which was quite ugly.
This commit improve the behaviour or the value labels:
- prevent overlapping value labels on stacked charts
- the bar chart value labels are now in the middle of the bar
- the value labels have now the same color as the dataset
- prevent value labels from going outside of the chart
Code-wise, the commit totally splits the handling of bar and horizontal bar charts. It make the code slightly longer, but avoid having to write a ternary for each computation of x/y position, which ultimately makes the code more readable.
Task: 4207889
review checklist
- [ ] feature is organized in plugin, or UI components
- [ ] support of duplicate sheet (deep copy)
- [ ] in model/core: ranges are Range object, and can be adapted (adaptRanges)
- [ ] in model/UI: ranges are strings (to show the user)
- [ ] undo-able commands (uses this.history.update)
- [ ] multiuser-able commands (has inverse commands and transformations where needed)
- [ ] new/updated/removed commands are documented
- [ ] exportable in excel
- [ ] translations (_t("qmsdf %s", abc))
- [ ] unit tested
- [ ] clean commented code
- [ ] track breaking changes
- [ ] doc is rebuild (npm run doc)
- [ ] status is correct in Odoo