Skip to content

frankchenfu/TreeCoViz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

16 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🌳 TreeCoViz: Phylogenetic Tree Comparison and Visualization Tool

TreeCoViz is a lightweight, user-friendly graphical software designed for visualizing and comparing phylogenetic trees. It supports Newick format input, customizable comparison and visualization parameters, and interactive outputs, making it suitable for researchers and students in computational biology and bioinformatics.


πŸ–Ό Sample Screenshot

screenshot

Example comparing two Newick-format trees and displaying their Largest Common Subtree.


πŸ“₯ Installation Instructions

πŸͺŸ Windows 10/11 (64-bit)

  • Download the precompiled executable: TreeCoViz.exe
  • Simply double-click to launch the application. No installation or setup required.

πŸ“Œ See the latest release


🐧 Ubuntu 20.04 / 22.04 (including WSL)

  • Download the executable: TreeCoViz
  • Open a terminal, navigate to the downloaded directory, and run:
chmod +x TreeCoViz
./TreeCoViz

βœ… Required Dependencies (first-time setup only)

To ensure proper display of the graphical interface (via Qt), run:

sudo apt update
sudo apt install -y \
  libx11-xcb1 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 \
  libxcb-render-util0 libxcb-xinerama0 libxcb-xkb1 libxcb1 libxcomposite1 \
  libxdamage1 libxfixes3 libxkbcommon-x11-0 libxrandr2 libnss3 libasound2 libgl1 \
  libqt5webengine5

βš™οΈ Build from Source (Optional)

If you prefer to build TreeCoViz on your own system (e.g., to customize features or to run on other systems), follow these steps:

  1. Clone the repository:

    git clone https://github.com/frankchenfu/TreeCoViz.git
    cd TreeCoViz
  2. Create a Conda environment using the provided environment.yml:

    conda env create -f environment.yml
    conda activate treecoviz
  3. Run the app:

    python src/client.py
  4. (Optional) Build a standalone executable using PyInstaller or NiceGUI:

    • NiceGUI (recommended):

      nicegui-pack --onefile --windowed --name TreeCoViz src/client.py
    • PyInstaller:

      pip install pyinstaller
      pyinstaller main.spec

    βœ… Note: The executable will be placed in the dist/ folder as TreeCoViz (Linux) or TreeCoViz.exe (Windows).


❓ Troubleshooting

Q: Double-click does nothing on Linux?

A: Run from terminal to capture error messages: ./TreeCoViz

Q: Error about missing Qt or GTK when running?

A: Ensure the Qt dependencies listed above are installed, or try to reinstall Qt with pip.

Q: Can I run this on MacOS?

A: Not officially supported yet, but it may run using Python source and a suitable GUI backend. For more information, please refer to NiceGUI Installation and Deployment for MacOS.

Q: Why does the program start slow?

A: On first run, starting the graphical interface may be slow, especially while loading the Qt backend and initializing components. If it runs on Windows, binding dynamic links may takes longer. But after that, it works properly and runs fast.

About

A software for Phylogenetic Tree Comparison and Visualization

Topics

Resources

Stars

Watchers

Forks

Languages