Skip to content

Conversation

@minglan
Copy link

@minglan minglan commented Jul 9, 2025

These two tools were presented at the EPICS Collaboration Meeting held in April 2025. The EPICS community has requested that I share the code. The code was initially rough, so I have made extensive modifications over the past months. This involved:

  • Adding diverse algorithms;

  • Optimizing algorithms for handling massive datasets to enhance computational efficiency and minimize loading latency;

  • Implementing various UI components to improve usability.

  • Extensive testing was also conducted to resolve bugs, ensuring the tools' stability and reliability.

Key modifications:

  • Two classes are modified:

    1. org.csstudio.trends.databrowser3.ui.Perspective.java;
    2. org.csstudio.trends.databrowser3.Messages.java.
  • One Resource Bundle file is modified:

    1. app\databrowser\src\main\resources\org\csstudio\trends\databrowser3\messages.properties
  • Two icons are added to the app\databrowser\src\main\resources\icons folder

    1. smooth.png;
    2. overlap.png.
  • Two new packages are added:

    1. org.csstudio.trends.databrowser3.ui.smoothview;
    2. org.csstudio.trends.databrowser3.ui.waveformoverlapview.

Any suggestions and bug reports are welcome to help improve the tools. Your feedback is invaluable for testing and refinement!

@georgweiss
Copy link
Collaborator

@minglan, this looks good. Will need to test a bit more, though.

@georgweiss
Copy link
Collaborator

@minglan, I'm looking at the waveform overlap feature, but need some context to fully understand it. Would it be possible for you to attach the EPICS collaboration meeting material you presented?

@minglan
Copy link
Author

minglan commented Jan 7, 2026

Phoebus Customization at China Spallation Neutron Source .pptx
@georgweiss Here is my report in the EPICS collaboration meeting. Only one page is related to the waveform overlap feature.
I also attach a figure to show the procedure to use the
overlap
waveform overlap feature. The data of a vertical orbit of a transport line in CSNS is shown. It is a waveform with length of 30.

@georgweiss
Copy link
Collaborator

@minglan, thanks for the update.
I have tested the Overlap View feature with some different waveform PVs using the default options (e.g. GroupTypicalSampling). Looks promising, but I have some observations to share.

  1. In GroupTypicalSampling.computeCentroid() I get an ArrayIndexOutOfBoundsException when looking at a waveform PV where the actual number of non-zero elements varies over time, and is in most cases smaller than the allocated size of the array. See screenshot from my IntelliJ debugger.
  2. When using the "jet color map" I wonder if users may need some explanation of the colors used to render the samples. Or is the idea that the "age" of the samples is irrelevant?
  3. The text for Periodic Refresh check box I feel does not need to state ON/OFF as the state of the check box indicates the same information.
  4. I would advocate an update to the documentation for the data browser (doc/index.rst) to explain these new features. Such an update could (should?) include some example screen shots.
Screenshot 2026-01-07 at 11 16 28

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants