Community
Participate
Working Groups
Created attachment 113440 [details] Report containing a chart showing the problem I'm working on a chart. My dataset has two series, both with positive and negative numbers, with for example series one being in the range -200 to 200, and the other -20 to 40 (but those values change, so I need the scale to be dynamic). If I have a chart with two series, with different scales, there doesn't seem to be a way to have them use separate scales, have them side by side, and have the zero point of y-axis-1 level with the zero point of y-axis-2. I want this so it's easy to see which values are positive, and which are negative. So I see two issues: 1) I've selected "Side-by-side" bar chart as the type, and the bars are still on top of each other. 2) I can't get the zero point on the two axes to align. Example report using the sample database attached. Expected result: The yellow and blue bars should be next to each other, not on top of each other. The 0 point on the LHS axis should be level with the zero point on the RHS axis. The gridlines should line up with the ticks on *both* sides so the gridlines make sense for both axes.
There's a workaround to align zero point with two y axes. You could set same absolute value min/max to axis scale so that zero point could be in the middle of axes. Regarding enhancements, will add two options in ChartWithAxes model. For side-by-side series to multiple y axes, add a boolean option like "isAxisAccumulated" or better name. Default value is false, that means side-by-side or stacked series only affects each axis and the latter axis's series will overlap the first. This is similar to current behavior, which is useful for different chart types, like Bar+Line combination. If set to true, all axes' series will be side-by-side or stacked together. This is useful for same chart types like this case. For zero point alignment, add a boolean option like "isOriginAligned". Default value is false. If set to true, all numerical y axes' origin will be aligned. Due to multiple y axes' coordinates complexity, the common behavior is to set origin in the middle of axis. If one y axis is datetime type, this option is invalid and should be disabled. Note that these two options are only enabled for more than one y axis. These could be put FormatChart->Axis subtask page.
*** Bug 247128 has been marked as a duplicate of this bug. ***
- Added Boolean properties "Aligned" and "SideBySide" to the model of Axis. - In the sub page "Format Chart"->Axis both check boxes "Aligned" and "SideBySide" were added to modify the properties. - The zero points of all the linear axes whose "Aligned" is set will be aligned. The "Aligned" check box will be enabled only when the axis is of type linear, and the default value is false. - The "Side by Side" check box will be enabled only when the axis is of Bar-like(Bar, Tube Cone, Pyramid) series type. The data points (bar) of all the axes whose "Side by Side" is set, will be displayed side by side instead of overlaid.
Verified in daily build 2.5.0.v20081215-0630.
The zero point wasn't aligned in daily build 20081229. Reopen it. When the chart was resized, the zero points will be un-aligned. See the snapshot.
Created attachment 121302 [details] screen snapshot
Created attachment 121303 [details] screen snapshot
Did you use new API to align two y axes? By default, it's not enabled. Could you attach report?
Created attachment 121329 [details] report-design
I can reproduce. It seems the first Y axis is not correct.
Fixed.
Verified in daily build <2.5.0.v20090113-0630>.