Welcome to the JavaScript feedback portal. We’re happy you’re here! If you have feedback on how to improve the JavaScript, we’d love to hear it!>
Thanks for joining our community and helping improve Syncfusion products!
When you have a column series with just one column the width of the column is calculated to be half what it should be.
I've modified one of your examples via StackBlitz to demonstrate the issue. I've plotted two charts - the first with two columns, the second with one column. Both have "columnWidth" set to 0.9. I've constrained the widths of the two charts so the plot area is about the same on both. You'll see that on the second chart, however, the column is roughly half the width it should be.
See stackblitz demo of the bug here.
The reason for this is that in common/utils/helper.js the getMinPointsDelta function when given a category axis with only one xValue it calculates the minDelta as being that xValue minus visibleRange.min. The standard range padding on a category axis for a single xValue will be 0.5 giving a min/max of -0.5/0.5 of the xValue. So with a single category column the minDelta will always be the size of the range padding (which, by default, will be 0.5, i.e. half), whereas as soon as you have more than one category column you'd typically have xValues as sequential whole integers and the minDelta will be 1.
Shouldn't getMinPointsDelta instead, when handling a category axis with only one xValue, calculate the minDelta to be (visibleRange.max - visibleRange.min) instead of (xValues[0] - visibleRange.min)?