GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — add imgui file dialog example by FlynnOConnell · Pull Request #950 · fastplotlib/fastplotlib

Conversation

@FlynnOConnell

@FlynnOConnell FlynnOConnell commented Nov 23, 2025 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Collaborator

WIP, Relies on #868, might be simplified by #849.

image

This example could save another synthetic dataset to png or mp4 to showcase loading different sizes / # of dims.

Could also instead copy the imgui_basic example for the UI and put the open file / open folder in a menu:

image

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

Vipitis reacted with eyes emoji
All reactions
  • 👀 1 reaction
@FlynnOConnell
add imgui file dialog example
e1cd148
@FlynnOConnell
FlynnOConnell requested review from clewis7 and kushalkolar as code owners November 23, 2025 21:38
@Vipitis

Vipitis commented Nov 26, 2025

Copy link
Copy Markdown
Collaborator

That is a really useful example. I looked at it briefly and might expand it with sequence thumbnails and an asnyc/threaded data loader as I have a lot of different sequences in a dataset to evaluate but they are on a slowish network drive.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@kushalkolar

kushalkolar commented Nov 26, 2025

Copy link
Copy Markdown
Member

If you can make a simple example that just uses imageio to load existing image files and just displays an ImageGraphic I think that would be simpler and I can merge it. I'm holding off on any PRs for ImageWidget until #951

That is a really useful example. I looked at it briefly and might expand it with sequence thumbnails and an asnyc/threaded data loader as I have a lot of different sequences in a dataset to evaluate but they are on a slowish network drive.

Sequences, as in image sequences? Sounds like making a numpy-like interface for lazy loading is the way to go, we do it a lot in another project: https://github.com/apasarkar/masknmf-toolbox/blob/main/masknmf/arrays/array_interfaces.py

Vipitis reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

kushalkolar
kushalkolar reviewed Nov 26, 2025
View reviewed changes
Comment thread examples/guis/imgui_file_dialog.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

@FlynnOConnell
simplify to use image graphic
6fda6c7
@github-actions

github-actions Bot commented Nov 29, 2025 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

📚 Docs preview built and uploaded! https://www.fastplotlib.org/ver/examples-imgui-filedialog

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@kushalkolar
Merge branch 'main' into examples-imgui-filedialog
812b0fe
kushalkolar
kushalkolar requested changes Dec 4, 2025
View reviewed changes
Comment thread examples/guis/imgui_file_dialog.py Outdated
"""Load an image file and update the graphic."""
try:
img_data = iio.imread(filepath)
self._image_graphic.data = img_data

@kushalkolar kushalkolar Dec 4, 2025

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to create a new image graphic if the buffer shape doesn't match.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@Vipitis

Vipitis commented Dec 10, 2025

Copy link
Copy Markdown
Collaborator

Sequences, as in image sequences? Sounds like making a numpy-like interface for lazy loading is the way to go, we do it a lot in another project: https://github.com/apasarkar/masknmf-toolbox/blob/main/masknmf/arrays/array_interfaces.py

I got an easy solution by making the numpy array of the correct size as zeros (maybe even np.empty could work) and then I just write the pixel data into that using threading.Thread while the GUI already shows. Here the loading order is predetermined, so random jumps won't "lazy load". Will still look into the thumbnails when I have more time.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

FlynnOConnell added 2 commits December 20, 2025 12:19
@FlynnOConnell
Merge branch 'main' into examples-imgui-filedialog
bf84c57
@FlynnOConnell
check impage format and shape against buffer
8eb42c0
kushalkolar
kushalkolar requested changes Dec 22, 2025
View reviewed changes
Comment thread examples/guis/imgui_file_dialog.py
self._image_graphic.data = img_data
else:
# shape mismatch: remove old graphic and create a new one
subplot = self._image_graphic._plot_area

@kushalkolar kushalkolar Dec 22, 2025

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

EdgeWindow has a figure instance so you can use that to get the subplot. Graphic._plot_area isn't part of the public API

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@FlynnOConnell

FlynnOConnell commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator Author

@Vipitis Instead of fixing the the issues above I used claude to extract a data loader from one of my other repos into a python package imgui_data_loader you might be interested in! @kushalkolar I will do the above at some point or could just import that data loader

Vipitis reacted with eyes emoji
All reactions
  • 👀 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

This branch has not been deployed

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

Reviewers

@kushalkolar kushalkolar kushalkolar requested changes
@clewis7 clewis7 Awaiting requested review from clewis7 clewis7 is a code owner

Requested changes must be addressed to merge this pull request.

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@FlynnOConnell @Vipitis @kushalkolar
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.