Skip to content

"A Multi-Technique Strategy for Improving Summary Polar Diagrams" by Aleksandar Anžel, Zewen Yang, and Georges Hattab

License

Notifications You must be signed in to change notification settings

AAnzel/Polar-Diagrams-Dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Polar-Diagrams-Dashboard

Manuscript

This library is created for the following paper:

"A Multi-Technique Strategy for Improving Summary Polar Diagrams" by Aleksandar Anžel, Zewen Yang, and Georges Hattab

Please cite the paper as:

Placeholder

Abstract:

Though the polar system may lack the universal familiarity of the Cartesian counterpart, it remains indispensable for certain tasks. Summary polar diagrams, like the Taylor and mutual information diagrams, address tasks such as detecting relationships, visualizing data similarity, and quantifying correspondence. While these diagrams are invaluable tools for uncovering data relationships, their polar nature can hinder intuitiveness and lead to issues like overplotting. We introduce a hybrid approach combining overview+detail, aggregation, interactive filtering, Cartesian linking, and small multiple to enhance the diagrams' clarity, comprehensiveness, and abilities. We conducted a user study with 21 participants to assess the approach's effectiveness. Additionally, we engaged three domain experts in a pretest review, whose feedback contributed to refining the approach before the user study. The results demonstrate the versatility and advantages, enhancing comprehension and accessibility while mitigating issues, and expanding the diagrams' utility through small multiple integration.

Dependencies

The code is written in Python 3.11.8 and tested on Linux with the following libraries installed:

Library Version
numpy 2.1.0
pandas 2.2.2
scikit-learn 1.5.1
scipy 1.13.1
polar_diagrams 1.2.0
plotly 5.22.0
dash 2.14.2
dash_bootstrap_components 1.6.0
dash-tools 1.12.0
gunicorn 21.2.0

The dependencies can also be found in requirements.txt.

Data

Location Description
data/ contains all data sets used in the dashboard.
data/Case_Study_Climate/ contains the data set used in the case study "6.1. Climate Model Comparison" in the original paper [1].
data/Case_Study_Ecoli/ contains the data set used for testing the dashboard.
data/Case_Study_Wine/ contains the data set used in the case study "6.2. Machine Learning Model Comparison" in the original paper.
data/Case_Study_Gaussian_Processes/ contains the data set used in the case study "6.3. Machine Learning Hyper-parameter Tuning" in the original paper.
User_Study/data/ contains all data sets generated by the user study and used for the statistical analysis.
User_Study/data/Results_Figures/ contains all figures presented in the original paper.

[1] Notes on how to download climate data

Code

Source Code Description
src/ contains all source scripts.
src/app.py contains the main script used to build the dashboard.
src/pages/small_multiple.py contains the script that builds the page with the small multiple technique presented using the data/Case_Study_Gaussian_Processes/ data.
src/pages/overview_detail.py contains the script that builds the page with the overview+detail technique presented using the data/Case_Study_Climate/, data/Case_Study_Ecoli/, and data/Case_Study_Wine/ data.
User_Study/src/ contains the main ipython notebook used to reproduce the results presented in the original paper.

Running

Locally

We recommend downloading the repository and running the dashboard locally due to more responsive interactions. After installing the dependencies from the requirements.txt, the user should run the following commands (Linux):

cd Polar-Diagrams-Dashboard/src
python app.py

The user should then open the link shown in the terminal or open the browser and type the following address: http://127.0.0.1:8050.

Online

The dashboard is also available online at: https://polar-diagrams-dashboard.onrender.com/. The online version might not be as responsive which is why we recommend running the dashboard locally using the previously mentioned method.

License

Licensed under the GNU General Public License, Version 3.0 (LICENSE or https://www.gnu.org/licenses/gpl-3.0.en.html)

Contribution

Any contribution intentionally submitted for inclusion in the work by you, shall be licensed under the GNU GPLv3.