Skip to content

Support 2D grid and mesh scan plotting in InteractivePlotWindow #416

Closed

Description

@Relm-Arrowny

Goals

Acceptance criteria : What journeys should the user be able to complete to consider your feature done
Be as specific as you can, check them off once they work. Add more if you find more requirements during development. Issue should only be considered done after all of them are checked

  • Support plotting 2D grid scans in InteractivePlotWindow.
  • When a 2D grid scan is selected, adapt the UI controls so users can choose the X motor coordinate, Y motor coordinate, and Z intensity / detector channel.
  • Render 2D grid data points using a 2D scatter plot (ax.scatter(x, y, c=intensity, cmap="viridis")) and/or heatmap/contour with a dedicated colorbar.

Tasks

base on the goals, deduce the tasks required. check them off once they're done

  • Add a "Plot Mode" control (1D Line / 2D Grid) to InteractivePlotWindow.
  • Implement 2D rendering in draw_plot() using ax.scatter with colormapping.
  • Update build_ui() to render coordinate selector widgets depending on selected mode:
  • In 2D mode: X Motor (radio), Y Motor (radio), Z Intensity
  • In 1D mode: X Axis (radio), Y Channels (checkboxes).
  • Ensure partial/in-flight streaming updates in update_plot() handle variable step sizes, incomplete rows, and serpentine (snake) scan
  • [ ]

Related Resources

any images/gifs, mockups/wireframes that would aid the development should be listed here
MockUp : link to mockup
Coda doc: link to coda
Additional context
Add any other context or screenshots about the feature request here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions