Skip to main content

Plotly Dash based GUI for EvalNE

Project description

EvalNE-GUI: The Graphical User Interface for EvalNE

contributions welcome MIT license made-with-python

Table of Contents
  1. About EvalNE-GUI
  2. Installation
  3. Usage
  4. Contributing
  5. License
  6. Citation

About

This repository contains the source code of the EvalNE-GUI, an open-source graphical user interface for EvalNE based on Plotly's Dash framework. The interface allows users to set up and execute EvalNE evaluations in an intuitive and interactive way, monitor system resources and browse previous evaluations. More information about EvalNE can be found in the official GitHub repo, and the user documentation. This library and the official EvalNE implementations are maintained by Alexandru Mara (alexandru.mara(at)ugent.be).

In summary, the main functionalities of the EvalNE-GUI include:

  • A dashboard that allows users to specify evaluation parameters
  • Tools for importing and exporting EvalNE configuration files
  • Functionalities for running evaluations directly from the EvalNE-GUI
  • Live monitoring of the system resources used by EvalNE and the EvalNE-GUI
  • Functionalities for exploring past evaluation setups, logs and results

(back to top)

Installation

The user interface has been tested on Python 3.8 and requires the following packages:

  • numpy
  • plotly
  • dash
  • dash-daq
  • dash_bootstrap_components
  • fa2
  • psutil
  • evalne (optional)

NOTE: The evalne package is not a strict dependency of the GUI. This package can be installed in any other virtual environment but the appropriate path to it must then be specified in the EvalNE-GUI Settings tab. If evalne is not detected when an evaluation is started from the GUI, an error message will be displayed.

The EvalNE-GUI can be installed from pip or by cloning the GitHub repository:

Option 1: Install the library using pip:

# Ensure that setuptools is up to date using:
pip3 install --upgrade setuptools

# Install the library using pip:
pip3 install evalne_gui

Option 2: Cloning the repository and installing:

# Clone the github repository
git clone https://github.com/aida-ugent/evalne-gui
cd EvalNE-gui

# Ensure that setuptools is up to date using:
pip3 install --upgrade setuptools

# Install the library using setup.py
python3 setup.py install

To launch the GUI simply execute the evalne-gui script. Alternatively, the __main__.py file can be executed using Python. A new browser tab will open showing the user interface.

evalne_gui
# Alternatively: python3 evalne_gui/__main__.py 

NOTE: If the GUI was installed in a virtualenv the launch script should be executed as venv/bin/evalne_gui.

(back to top)

Usage

The EvalNE-GUI features 4 tabs which provide access to the evaluation Dashboard, system resource Monitoring, previous Runs & Results and general app Settings.

UI

Dashboard tab

This tab allows users to specify all the evaluation parameters, from the data and methods to use to the downstream task, results to report, etc. This can be done either manually or by importing an existing EvalNE config file. Once all required parameters are set, an evaluation can be launched using the Run Evaluation button. Evaluations can be stopped at any time by pressing the Stop Evaluation button. Config files can be imported and exported using the appropriate buttons and the default parameter values can be restored using Clear Config.

NOTE: The EvalNE-GUI persists all values inputted in any field. Tabs can be switched and the app can even be closed without these values being lost.

Monitoring tab

The Monitoring tab contains plots displaying the main system resources used such as CPU and RAM. In addition to this, the tab also provides specific information regarding the EvalNE (when running) and EvalNE-GUI processes such as status, resources used, current working directory, etc. Finally, the output of the current or last evaluation launched (if any), is also displayed.

Runs & Results tab

The Runs and Results tab summarizes current and previous evaluation runs. For each run the filename, status (running, failed, finished), runtime, and the start and end times are displayed. By clicking on any run the evaluation logs and results can also be visualized.

Settings tab

This tab allows users to specify global EvalNE parameters such as the path there the library is installed (if different from the EvalNE-GUI installation path) or the folder where to store new evaluation runs.

(back to top)

Contributing

Contributions are greatly appreciated. If you want to help us improve the EvalNE-GUI, please fork the repo and create a new pull request. Don't forget to give the project a star! Thanks!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Alternatively, you can make suggestions or report bugs by opening a new issue with the appropriate tag ("feature" or "bug") and following our Contributing template.

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Citation

If you have found EvaNE or the EvalNE-GUI useful in your research, please consider giving our repos a star and citing our paper:

    @article{MARA2022evalne,
      title = {EvalNE: A Framework for Network Embedding Evaluation},
      author = {Alexandru Mara and Jefrey Lijffijt and Tijl De Bie},
      journal = {SoftwareX},
      volume = {17},
      pages = {},
      year = {2022},
      issn = {100997},
      doi = {10.1016/j.softx.2022.100997},
      url = {https://www.sciencedirect.com/science/article/pii/S2352711022000139}
    }

(back to top)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evalne_gui-0.1.0.tar.gz (34.5 kB view details)

Uploaded Source

Built Distribution

evalne_gui-0.1.0-py3-none-any.whl (35.9 kB view details)

Uploaded Python 3

File details

Details for the file evalne_gui-0.1.0.tar.gz.

File metadata

  • Download URL: evalne_gui-0.1.0.tar.gz
  • Upload date:
  • Size: 34.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for evalne_gui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 354c2ab55832b5419be06e2674cea2db5647b3d9bc081fb6b99a3b2f7838d7ce
MD5 5aec5b1332b17f48faf9d043fd2d0a42
BLAKE2b-256 0065245e4cb5c396c2dbb915b7d3528bcdf48271d63d64b465c7a7929f50056e

See more details on using hashes here.

File details

Details for the file evalne_gui-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: evalne_gui-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 35.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for evalne_gui-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5d140f059350f98028c23f0448d16928753db93bfa9f1cf6d5e6851e88c7a986
MD5 1da42cdfde3110a70c567c6a02566481
BLAKE2b-256 dc71a7100cf854bccfebe639193e9641393e0994212f3e304752b07006480706

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page