Skip to content

ElsevierSoftwareX/SOFTX-D-25-00569

 
 

Repository files navigation

Contributors Forks Stargazers Issues APACHE License


SimViz Logo

SimViz

An interactive visualization tool designed to facilitate the comprehension of (potentially complex) similarity measures
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. License
  5. Contact
  6. Acknowledgments

About The Project

SimViz (Similarity VisualiZation) is a tool focused on the interactive visualization of similarity functions and how they are computed over different case bases.

SimViz ScreenShot

(back to top)

Built With

(back to top)

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Development

  1. Clone this repository:
    git clone https://github.com/gjimenezUCM/simviz.git
  2. Install dependencies:
    npm install
  3. The application is built using Webpack. To do it:
    npm run build
  4. During development, run a development server with:
    npm run start
  5. Generate SimViz documentation with:
npm run docs

(back to top)

Running in Docker

You can run SimViz locally in a Docker container. To do that:

  • Install Docker

  • Build the docker image: docker build . -t simviz:latest

  • Create the SimViz container: docker container create -i -t simviz

  • data folder files are not copied in the container, so use a volume to share data between the host and the container, instead. Finally, SimViz will run in the container as a web server on port 8000 so expose the corresponding port on the host machine. For example, to run SimViz on http://localbost:8000 use

    docker run -i -t -v ./data/:/app/data/ -w /app -p 8000:8000 simviz

Usage

SimViz Interface

SimViz interface displays a menu bar (1) to select the case base and the similarity measure to analyze. Then, it is organized in four panels:

  • Case comparison panel (2), to compare similarity values between cases.
  • Similarity value distribution panel (3), to explore the similarity scores.
  • Information panel (4), to display information about the loaded case base and the selected similarity measure.
  • Taxonomy viewer panel (5), to display taxonomy values if a case attribute supports this data type.

Watch the tutorial videos in Help section for more details about SimViz features.

Datasets/Case bases

Right now, with SimViz we can explore the following case bases:

Similarity data

Similarity data is computed offline using a weighted average as global similarity function, and predefined local similarity functions over the attributes of the cases contained in a case base. The case base and the similarity data are enriched with information about attribute datatypes, local similarity functions, weights for global similarity functions and user explanations.

Read the instructions in the data folder to learn more about the similarity data and how to generate and visualize your own case base and similarity functions.

(back to top)

Known Issues

  • Casebase id attribute must be a string and it must start with a character.
  • Sometimes the colors in the histogram are different from the colors in the heatmap and the color legend. This is an issue with Plotly and how it generates histograms when there is no data for leading or trailing bars.

(back to top)

License

Distributed under the APACHE 2.0 License. See LICENSE-2.0.txt for more information.

(back to top)

Contact

@guille_fdi - [email protected]

https://github.com/gjimenezUCM/simviz

(back to top)

About

A visualization tool of similarity functions over a case base. Documentation: https://gjimenezucm.github.io/simviz/docs/

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 37.5%
  • Python 29.5%
  • JavaScript 13.8%
  • Jupyter Notebook 13.4%
  • HTML 3.7%
  • CSS 2.1%