Metadata-Version: 2.4
Name: pynanolab
Version: 3.1.0
Summary: A data analysis and visualization software
Home-page: https://github.com/decacent/PyNanoLab
Author: Shaochuang Liu
Author-email: shaochuangliu@gmail.com
License: MIT
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS
Classifier: Programming Language :: Python :: 3.11
Classifier: Framework :: Matplotlib
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: license.txt
Requires-Dist: numpy
Requires-Dist: PySide6<=6.8.3,>=6.6.1
Requires-Dist: matplotlib
Requires-Dist: scipy
Requires-Dist: npTDMS
Requires-Dist: sympy
Requires-Dist: requests
Requires-Dist: PyWaveLets
Requires-Dist: lmfit
Requires-Dist: pandas
Requires-Dist: seaborn
Requires-Dist: openpyxl
Requires-Dist: pyqtgraph
Requires-Dist: numexpr
Requires-Dist: pyinstaller
Requires-Dist: spectate
Requires-Dist: traitlets
Requires-Dist: psutil
Requires-Dist: tftb
Requires-Dist: chardet
Requires-Dist: tabulate
Requires-Dist: scikit-learn
Requires-Dist: tables
Requires-Dist: statsmodels
Requires-Dist: pybaselines
Requires-Dist: hdbscan
Requires-Dist: untangle
Requires-Dist: configobj
Requires-Dist: deepdiff
Requires-Dist: qtconsole
Requires-Dist: pyshortcuts
Requires-Dist: spikeextractors
Requires-Dist: pyts
Requires-Dist: markdown
Requires-Dist: openai
Requires-Dist: pygments
Requires-Dist: ollama
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

## PyNanoLab is an all-in-one GUI software for Nanopore data analysis and visualization, expecially for nanopore analysis.

You can get tutorials from the [PyNanoLab website](https://decacent.github.io/PyNanoLab).

![PyNanoLab UI](https://decacent.github.io/PyNanoLab/images/1.png)
## Installition
In the version 3.X, binary installer (*.exe) is not provided anymore owing to the complex workflow and lost feature and performance.

We recommend you use the pip install to obtain all the advanced features.

### System Required

Firstly, you should have already installed the python or conda virtual environment in your system.

[Miniconda](https://docs.conda.io/en/latest/miniconda.html) is recommended. And you should add the conda to your system environment variable.

In windows, you also need to install a terminal. [git-windows](https://git-scm.com/download/win) or [windows-terminal](https://apps.microsoft.com/store/detail/windows-terminal/9N0DX20HK701) is recommended.

### 1. Create a new python virtual environment

PyNanoLab depend on th PySide6 to create its GUI. And it's not compatible with the other PyQt package. So we highly recommend to install pynanolab to a new python virtual environment.

use following command in a terminal:
```sh
conda create -n pnl python=3.11.8 #  
source activate
conda activate pnl # activate the pnl environment.
conda install numpy # optional, install the numpy-MKL to speed up the software.
```

Then, you should install [Pytorch](https://pytorch.org/) on this environment (Any version, you should select a version, GPU verison is more better).  
For example:
``` sh
# CPU 版本
pip install torch torchvision torchaudio
# 或者自行安装GPU版本
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
```
! warning: at windows, you should install hdbscan by manually compiling.
For example using conda
```shell
conda install hdbscan -c conda-forge
```
If using pip, you should have c/c++ compiler on your system.

Now, you have created a new python virtual environment and activated it.
The name is pnl, and you can change the name to anything you want, and the python  version is specified to >=3.11. (We recommend >=3.13.x)

### 2. Install the pynanolab by pip
Then, you can directly install as general python packages.
```sh
# online install
pip install pynanolab
```
Use the above command, the pynanolab will be installed automaticly. And a entry fille will be created in the **Scripts** folder of the "pnl" virtual environment. In windows is named "pynanolab.exe" and "pynanolab" in Linux and MacOSX.

Then, you can directily conduct the following command to open it in a terminal with pnl virtual environment activated.
```sh
pynanolab
```
If you want to create a shortcut or a desktop entry. Use the following command:
```
pnl-shortcut
```

### 3. Upgrade pynanolab
If you use the pip installtion. You can upgrade the packages manually using the following command:
```
pip install --upgrade pynanolab
```
