Giter Club home page Giter Club logo

cryoem-viztools's Introduction

CryoEM-viztools

Better visualization for cryo-EM.

Still in dev and welcome to any suggestions and contributions!

INPUT: Usual cryo-EM file formats, including mrc(s) and star files.
OUTPUT: Either images or static html file.

Heavily uses Plotly to render interactive visualizations.

Besides making format conversions, this repo tries provide useful visualizations of the information in the star files outputted by RELION and other software.

Examples of the generated html files can be found in ./samples/output.

A few examples:

3D plot of orientation angles of particles in a half-sphere, with selectable attribute (color-coded) in the star file:

Histogram plot with selectable attribute in the star file:

Scatter plot with predefined X and Y axis and selectable attribute (color-coded) in the star file:

Scatter plot with predefined X and Y axis and a color-code attribute in multiple star files (for tracking the relationships of as many as three attributes in a process with multiple iterations, e.g. 3D refinement):

Micrograph image overlaid with picked particle coordinates, with sliders for merit-based thresholding and changable diameters:

cryoem-viztools's People

Contributors

yilaili avatar hanliu0119 avatar

Stargazers

 avatar

Watchers

Michael A. Cianfrocco avatar  avatar

cryoem-viztools's Issues

Star file visualization (particle)

Input: *.star (info at the particle level)
Output: *.html

Features:

  • Can select different data frames in the dictionary read in (data_optics and data_micrographs).
  • Show histograms with a slider to filter different attributes (selectable). Also show the total number after filtering.
  • 2D scatter plot with any two selected attributes.
  • Enhancement: can select each micrograph entries and view where it comes from on the micrograph as images along with the associated attributes. We will have a separate flag to enable this.

micrograph image with info in star file

Input: *.star (info at the microgarph level)
Output: *.png (one png for each micrograph listed in star file)

Display:

  • micrograph image
  • attributes in star file displayed next to the micrograph image

Star file visualization (micrograph)

Input: *.star (info at the micrograph level)
Output: *.html

Features:

  • Can select different data frames in the dictionary read in (data_optics and data_micrographs).
  • Show histograms with a slider to filter different attributes (selectable). Also show the total number after filtering.
  • 2D scatter plot with any two selected attributes.
  • Enhancement: can select each micrograph entries and view each of them as images along with the associated attributes. We will have a separate flag to enable this.

add star_subset.py

Select a subset of star file based on one attribute and given range or indices.
Output a new star file.

starviz overlay on micrographs

Input: *.star (info at the particle level)
Output: *.html (one html for each micrograph listed in star file)

Display:

  • scatter plot of rlnCoordinateX and rlnCoordinateY overlaid on micrograph image, with selectable color coding
  • one html for each unique micrograph in the star file

Overlay coordinates on top of image (micrograph)

Input: *.mrc and *.star (coord)
Output: *.html

Features:

  • The images will be displayed in a selectable list.
  • The coordinates encode the positions of certain points on a certain image. We'll need to overlay the coordinates on top of the images as circles.
  • Have a sliding bar to display coordinates only above a certain threshold. (Optional)
  • Change the diameter of the circles.
  • Change the color of the circles.

overlay.py in batches

Only input would be RELION's AutoPick job folder. Will look for summary.star for paths of both micrographs and picks.

3D object visualization

Input: *.mrc
Output: *.html
Features: zoom-in/out, translation, rotation, filtering based on voxel values

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.