Skip to Main Content

APEX

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

BUG: APEX 20.1.0.00.13: Charts missing axis labels when using MMMMM CLDR pattern

fac586May 15 2020 — edited Aug 4 2020

I wanted to create some compact bar charts showing monthly data for use in a dashboard page.

The single series is based on a local database query in the region source:

select

    add_months(trunc(sysdate, 'yy'), n - 1) x

  , 500 * n - power(2, n) y

from

    (select level n from dual connect by level <= 12) t

where

    1 = 1

order by

    x asc

The Time Axis Type chart attribute is set to Enabled.

To keep the time axis labels clear while fitting the chart region into 2 layout columns, the X axis is configured to display the initial letter of each month in the current calendar year. To do so, the axis Format property is set to Date - Short and the Pattern to the Unicode CLDR narrow month symbol MMMMM. (Using the longest symbol to render the shortest representation seems completely barking. I presume a committee is involved.)

However, there is a problem. When the chart is displayed (see example), labels where the initial letter of the month is the same as the preceding month are missing (e.g. July).

To investigate this further, I created another chart region, this time with data for April missing from the series, so that the months March and May would be adjacent on the X axis:

select

    add_months(trunc(sysdate, 'yy'), n - 1) x

  , 500 * n - power(2, n) y

from

    (select level n from dual connect by level <= 12) t

where

    n != 4

order by

    x asc

This seems to confirm the problem as now the label for May is missing as well as that for July.

There is a further oddity. Despite there being no data for April, and the Fill Gaps in Chart Data property being Off, there is a space for it on the chart. This is also unlabelled on the X axis. This kind of makes sense because this is a single series chart and the online help says that this property does not apply to single series charts. It probably would be better if the "Multi-Series Chart Data" section in the property sheet was not shown at all for single series charts.

In this case the data densification seems to result from enabling the time axis type, as it is absent otherwise. It's a bit strange that APEX/JET determines that a gap exists, fills it, but doesn't label it.

This post has been answered by Hilary Farrell-Oracle on May 20 2020
Jump to Answer
Comments
Post Details
Added on May 15 2020
4 comments
1,430 views