Visualization for TSS comparison - Integrative-Transcriptomics/tss-prediction-comparison GitHub Wiki

1. Visualization tool

Comparison of Plotly and ECharts for Visualizing Backend Results

Plotly

Advantages:

  1. Simplicity and User-Friendliness:

    • Plotly is renowned for its user-friendly API, making it easy to create interactive charts.
    • Ideal for quickly implementing standard charts without extensive configuration.
  2. Interactive Charts:

    • Plotly provides comprehensive interactivity by default, including zooming, panning, and hover effects.
    • These interactive features make Plotly an excellent choice for dashboards that require deep data interactions.
  3. Extensive Documentation and Community Support:

    • Plotly boasts extensive documentation and a large user community, facilitating learning and troubleshooting.
    • It supports a wide range of chart types, including complex 3D charts.
  4. Seamless Integration with Dash:

    • Plotly integrates seamlessly with Dash, a web application for building dashboards, also developed by Plotly.
    • This integration simplifies creating complex dashboards in Python.

Disadvantages:

  1. Performance:
    • Plotly can become slower in rendering and interactivity with very large datasets.
    • This might be a limitation for very large sets of data to visualize.

ECharts

Advantages:

  1. Performance and Speed:

    • ECharts is known for its high performance, especially when handling and visualizing large datasets.
    • It uses WebGL for 3D rendering, beneficial for complex visualizations.
  2. Flexibility and Customization:

    • ECharts offers extensive flexibility and customization options, ideal for tailored visualizations.
    • It supports a wide array of visual effects and layouts that can be finely tuned.
  3. Modern and Attractive Aesthetics:

    • ECharts provides stylish and modern charts that can be more visually appealing.
    • The default styles are generally more refined and require less tweaking.
  4. Open Source and Free:

    • ECharts is fully open-source and free to use, even for commercial projects.

Disadvantages:

  1. Complexity and Learning Curve:

    • ECharts' API can be more complex, presenting a steeper learning curve, especially for beginners.
    • Its high flexibility often requires more configuration to create simple charts.
  2. Documentation and Support:

    • Although ECharts has good documentation, it can be less intuitive compared to Plotly.
    • It can be more challenging to find specific information for certain use cases.

Decision: Plotly

After weighing the pros and cons of both libraries, we have decided to proceed with Plotly. Here are our reasons:

  • User-Friendliness: Plotly allows us to quickly create interactive charts without extensive setup. This speeds up development time and makes it easier for new team members to get up to speed.
  • Interactive Features: Plotly's high level of built-in interactivity is ideal for our use cases, which require users to deeply engage with the data.
  • Integration with Dash: As we plan to build dashboards that integrate seamlessly with Python, Plotly's integration with Dash provides a significant advantage.
  • Documentation and Support: Plotly's comprehensive documentation and large community make development and troubleshooting much easier.

2. Ideas for visualization:

Graph with intensity value:

  • can be taken directly from the .wig file
  • Issue:
    • Might not be helpful visually if the amount of bases is too big

image

Graph with intensity value (histogram):

  • vertical lines indicate TSSs
  • bins might visualize TSSs better from a user perspective
  • Issues:
    • How to scale the graph? What if the user wants to look at say a 1000 bases at time?
      -> Zooming in and out cant change the number of bins too much because then we would end up with the graph above
      -> instead more values should make up one bin the more zoomed out the graph is

image

our TSS comparison vs. TSSpredator Graph:

  • Graph with complete sequence and TSSs of TSSpredator and our TSSs in different colors for direct comparison

image

Venn diagram:

  • Demonstrating the commonalities and differences between our prediction and TSSpredators in numbers for example
    • total number of TSSs

image