Commit Graph
458 Commits
Author SHA1 Message Date
levita_a f55b35f0dd Stop stopping at each plot to show it 2026-03-24 16:56:44 +01:00
allevitan 603486e824 Change the default colormap for exponentiated objects to match that for un-exponentiated objects, and also update test_fancy_ptycho to show all the plots (not just plot level 2) 2026-03-24 16:55:56 +01:00
allevitan ad2b09f2f0 Update the tests to work better when checking the model plotting, and make sure to cover panel_plot_mode=False 2026-03-24 16:19:26 +01:00
allevitanandClaude Sonnet 4.6 29e9fddd72 Add test coverage for plot_translations, plot_nanomap, and plot_nanomap_with_images
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-24 16:01:45 +01:00
allevitan 25c7b66c7c Do a final review of all the examples to ensure they work and are well structured 2026-03-24 11:10:23 +01:00
allevitanandClaude Sonnet 4.6 5c5c0be7c6 Reformat plotting function signatures to one-parameter-per-line style
All public functions in plotting.py now use the expanded multi-line
signature format with trailing commas for consistency and readability.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-24 11:00:43 +01:00
levita_a 4201b41573 Made more adjustments to the plotting system to avoid using constained_layout, which was causing hangups during live plotting and didn't look as nice 2026-03-24 09:13:51 +01:00
levita_a f979388280 Fix an annoying warning coming from double-setting the figsize 2026-03-21 21:42:16 +01:00
allevitan 29656fd78e Improve the colorized plotting further, and add a colorbar which will be useful for publishing figures now that it's not just a simple hsv lookup. Also fix a bug with nonresponsive windows when all model plots are closed, but the dataset plots are still showing. 2026-03-21 21:27:16 +01:00
allevitan f04ac9f0ec Make the colorized plot look nicer, with a more perceptually uniform mapping and a colorbar for accurate reading of phases 2026-03-21 17:35:14 +01:00
allevitan a4a38530d1 Update the plot_image functions to show sliders 2026-03-21 14:57:16 +01:00
allevitan f8ff525722 Add example patterns for jupyter notebooks 2026-03-21 08:41:18 +01:00
levita_a dafb204aa0 Fix a bug where closed windows wouldn't reopen at the original size 2026-03-20 20:18:32 +01:00
allevitan bef907c032 Added a minimum plotting interval to model.inspect(dataset) to make it easier to not plot so much without manual intervention 2026-03-20 20:01:40 +01:00
levita_a f35141dcc8 Check that all the models work (all but Multislice2DPtycho, which was already broken, and make necessary tweaks 2026-03-20 19:39:47 +01:00
allevitan 91db5b3c64 Update remaining models to new plot registration system 2026-03-20 19:01:22 +01:00
allevitan e7f943e254 Made a few more updates to some example scripts, to show the panel plot mode 2026-03-20 17:35:25 +01:00
allevitanandClaude Sonnet 4.6 f4260837bc Add title option to plot_image and wrappers; misc fixes
- Add title parameter to plot_image, plot_real, plot_imag, plot_amplitude,
  plot_phase, and plot_colorized
- Various fixes to base.py and fancy_ptycho.py

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 17:20:52 +01:00
allevitanandClaude Sonnet 4.6 dd744a00a4 Improve plotting infrastructure and fix various bugs
- Switch panel plots to use subfigures with constrained_layout for better layout management
- Add plot_loss_history method to CDIModel base class
- Fix matplotlib compatibility for older versions (interactive backend detection)
- Make CUDA usage conditional in examples
- Add panel_plot_mode and plot_level params to FancyPtycho constructor
- Default plot_level filtering to 1 instead of 0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 15:33:49 +01:00
levita_a 44fe36d24f Kill a bunch of bugs and make the flow more sensible by hand 2026-03-20 11:09:13 +01:00
allevitan f3581b88db A first prototype from claude to test on Ra 2026-03-20 09:47:38 +01:00
Dayne Yoshiki Sasaki ca3c48e83d Merge pull request #67 from cdtools-developers/new_high_NA_intensity
A small fix to the high NA propagator
2026-02-11 09:41:05 -08:00
levita_a 1dd116d277 Add the additional factor of R^2 2026-02-11 11:06:29 +01:00
Dayne Yoshiki Sasaki e56f3c959f Merge pull request #31 from cdtools-developers/near_field_ptycho
Adding near field ptychography
2026-02-10 09:52:52 -08:00
levita_a e52c6e38aa Remove the spurious 'probe_shape' parameter 2026-02-10 11:46:14 +01:00
levita_a 1d57005b33 Add the example data 2026-02-06 13:28:00 +01:00
levita_a 65e4882fdd Merge remote-tracking branch 'origin/master' into near_field_ptycho 2026-01-14 17:09:17 +01:00
levita_a a97e4cdf39 Add licensed near-field ptycho data to enable testing 2026-01-14 17:01:11 +01:00
Abe Levitan 98d2acf032 Merge pull request #66 from cdtools-developers/bugfix/surface_normal_strip
Fix a bug preventing the default surface normal of [0 0 1] from ever being defined in Bragg2DPtycho
2025-12-19 14:55:59 +01:00
yoshikisd 69a94f0fe8 Bragg2DPtycho scattering_mode string values only inspected if scattering_mode is a string 2025-12-18 18:15:19 +00:00
Dayne Yoshiki Sasaki 126bfaa92c Merge pull request #62 from cdtools-developers/fix-divzero-error
Stop Ptycho2DDataset.inspec() from raising a divzero error in many situations
2025-12-08 10:08:13 -08:00
Abe Levitan 9402939e40 Merge pull request #63 from cdtools-developers/surface_normal
Make it easier to change the surface normal in Bragg2DPtycho.from_dataset
2025-12-04 09:08:46 +01:00
levita_a 8f3ad59c6d Suggested changes: Make surface_normal work with anything castable to an array with np.asarray, change the check for length-3 to cover all cases, and add a check to explicitly fail if the scattering_mode argument is improperly set, instead of silently falling back to default 2025-12-02 15:27:20 +01:00
yoshikisd 7286bad264 Added heirarchy of surface_normal definition in Bragg2DPtycho from_dataset 2025-12-01 22:20:28 +00:00
yoshikisd bac95b7636 Make it easier to change surface normal in Bragg2DPtycho.from_dataset 2025-11-20 21:42:19 +00:00
levita_a c78b528930 Change how the dataset mask is calculated, so that it only raises a divide by zero error if unmasked pixels have an issue. Add an option to ptycho_2d_dataset to plot the mask 2025-11-19 10:46:01 +01:00
levita_a ab7048e375 merge updates to master 2025-11-19 10:29:33 +01:00
Dayne Yoshiki Sasaki 4a94ea13c9 Merge pull request #61 from gnzng/customdocs
[docs] Adding instruction to build custom documentation based on version or commit hashes
2025-11-18 13:12:38 -08:00
gnzng 444b56b829 docs: update installation instructions for dependencies to include pip 2025-11-16 11:21:36 -06:00
gnzng 4d18171e59 docs: add instructions for building custom documentation 2025-11-16 11:00:33 -06:00
Dayne Yoshiki Sasaki 36055d04be Merge pull request #59 from gnzng/quickfixdocs
fix: documentation build step to use Sphinx directly
2025-11-12 14:54:57 -08:00
gnzng f0f44e3c83 fix: documentation build step to use Sphinx directly 2025-11-12 11:54:17 -06:00
Abe Levitan 562bcab171 Merge pull request #57 from gnzng/pyprojecttoml
Change to Pyproject.toml installation and uv, remove python 3.8 support, add python 3.13 and 3.14 support
2025-11-12 16:41:21 +01:00
gnzng 3f46caf757 update authors list in pyproject.toml and move further doc link 2025-11-12 09:04:53 -06:00
gnzng 3c9e9eb1c7 adding pure pip install pipeline to CI 2025-11-12 08:59:37 -06:00
gnzng 11ed3df35e ending python 3.8 support, adding python 3.14 to automatic test 2025-11-11 14:33:55 -06:00
gnzng 5a3e154e8d add Python 3.13 to the CI workflow matrix 2025-11-10 12:50:59 -08:00
gnzng e94499a6a4 fix: update pytest command to use 'uv' for consistency in CI workflow 2025-11-10 12:42:32 -08:00
gnzng 18c794b5db fix: add virtual environment creation step in CI github workflows 2025-11-10 12:37:44 -08:00
gnzng 728cf9d590 update readme and installation docs 2025-11-10 12:23:25 -08:00