Online plotting does not work anymore

swiebertje
swiebertje New Altair Community Member
edited November 5 in Community Q&A
Hi there,

The processlog operator for displaying data during process runtime does not update the plot view anymore. It seems to be some kind of problem with the datatable events. Only the table view is updated correctly for each new logged value.




Tagged:

Answers

  • land
    land New Altair Community Member
    Hi,
    as you have noticed we have changed the plotters completely. Might be, there has something gone wrong. We will check that.
    Thank you for your hint.

    Greetings,
      Sebastian
  • swiebertje
    swiebertje New Altair Community Member
    I did some investigation for the problem and it appears that not all plotters have an consisted implementation for handling dataTable updates. PlotterAdapter listens to dataTable update events but only invokes a repaint. Concrete plotters should update themselves with the new data before executing the repaint. But there's no such contract available in PlotterAdapter.

    At this point only a few concrete plotters responds to datatable updates by refreshing their data. I've seen different implementations for handling the datatable updates. For example the old ScatterPlotter overwrites paintComponent.

    A solution could be to create an abstract method in PlotterAdapter, updatePlotter() for example, which will be called from dataTableUpdated before calling repaint. Concrete Plotters will then refresh their data in updatePlotter so the next repaint shows the dataTable update.