deephaven / web-client-ui

Deephaven Web Client UI
Apache License 2.0
29 stars 31 forks source link

`formatPattern` is ignored on an axis used with a category plot #2245

Open niloc132 opened 1 month ago

niloc132 commented 1 month ago

Description

In a deephaven.plot.figure.Figure instance, the axis of a chart is defined separately from the series that will be related to it. The axis can be given a format pattern to use for values on that axis, and while that pattern is applied for xy series instances, it is not applied for category data.

Steps to reproduce

  1. Open a python console in the web UI
  2. Run the following script, to create a figure with an axis that has a pattern, and draw a category series on it

    from deephaven.plot.figure import Figure
    from deephaven import time_table
    
    t = time_table("PT1s").update(["A=i % 3", "B = `b` + (i % 5)"])
    p = Figure().x_axis(format_pattern="yyyy-MM").plot_cat(t=t, category="Timestamp", y="A", series_name="Series").show()
  3. Observe how the x axis labels are rendered Expected results X labels should show in the yyyy-MM format.

Actual results X labels show in the default yyyy-MM-dd HH:mm:ss.SSSSSS format: image

Additional details and attachments

Here's an analogous chart using an XY series:

from deephaven.plot.figure import Figure
from deephaven import time_table

t = time_table("PT1s").update(["A=i % 3", "B = `b` + (i % 5)"])
p = Figure().x_axis(format_pattern="yyyy-MM").plot_xy(t=t, x="Timestamp", y="A", series_name="Series").show()

image Observe that the X labels follow the expected pattern.

Versions