Repository navigation
This minor feature release builds on the interactive dashboard web app shipped in v4.3.0, with much richer in-browser volume exploration in the trajectory creator, as well as introducing a new WarpTools parsing utility. We have also broadened dependency support (including Python 3.14) and fixed several issues, primarily with outdated dependencies.
Interactive dashboard
-
Unified volume ↔ trajectory workflow
Volume viewing has been subsumed into the trajectory creator so path editing and volume display share one session model. This includes VTK↔ChimeraX view synchronization, improved path overlay / picker refresh behavior, separate direct vs. nearest interpolation modes, automatic k-means shortest-trajectory calculation, and tighter controls for particle sets and path arrangement.
cryodrgn abinit output using EMPIAR-10792 analyzed with the trajectory creator
-
Volume slice and 3D viewing without requiring ChimeraX
The trajectory creator interface now includes a dedicated volume slice viewer for inspecting decoded volumes as 2D slices in the browser, with user-controllable slice planes / rotation centres, multi-volume slice display, and contrast controls. A VTK-based 3D volume viewer is also integrated into the same workflow.
-
Custom color covariates from
.pklfilesDashboard plots can now load user-chosen
.pklcolor covariates from file to use in analysis scatterplots in addition to using existing covariates such as znorm and k-means labels. -
Particle explorer image-grid polarity controls
The montage of images used in the particle explorer gains an original/inverted contrast toggle.
-
Other dashboard updates
- Improved particle-explorer image-cache size selection and a simpler image-grid control UI layout.
- Dashboard Plotly usage now works across Plotly 5.x and 6.x, and ships bundled Plotly assets instead of pulling
.jsfiles directly from the web. - Command builder layouts and parameter field controls were further refined.
New utility: parse_warptools
We are adding cryodrgn_utils parse_warptools for converting WarpTools / RELION5 subtomogram .star files into cryoDRGN-compatible 2D particle rows (#480):
cryodrgn_utils parse_warptools -t tomograms.star -p particles.star \
--tilt-dim 5760 4092 -o particles_2d.star
# Then produce pose+CTF inputs for reconstruction as usual:
cryodrgn parse_star particles_2d.star --poses pose.pkl --ctf ctf.pkl --Apix 2 -D 128WarpTools stacks that set rlnCtfDataAreCtfPremultiplied are called out explicitly so CTF correction can be disabled appropriately in cryoDRGN. Parsing also includes cached per-tomogram projection construction for better throughput on large tilt series.
Dependencies and compatibility
- Support for Python 3.10 through 3.14
- Dependency pins moved from restrictive maximum versions toward minimum floors where appropriate (
torch>=2,numpy>=1.25,pandas>=2.2,plotly>=5,<7, etc.)- Fixes to support these updates: pandas 3.x starfile + A/px property handling, matplotlib 3.11 patches (#479), and updated seaborn histogram APIs
Testing and code quality
- Properly using
with...for open-file buffer handling across various utilities (issue raised by GitHub’s automated security analysis) - More robust interrogation of numpy + torch install combinations in CI dependency matrix
- Fixing reference hand volume under
tests/data/hand-vol.mrc - Playwright-based browser / integration coverage for dashboard interfaces; Node/Chromium scenario tests for trajectory JavaScript backends
Please let us know if you have any questions or suggestions by replying here or opening an issue on our GitHub board!