Cargando…
xml2jupyter: Mapping parameters between XML and Jupyter widgets
Jupyter Notebooks (Kluyver et al., 2016, Perkel (2018)) provide executable documents (in a variety of programming languages) that can be run in a web browser. When a notebook contains graphical widgets, it becomes an easy-to-use graphical user interface (GUI). Many scientific simulation packages use...
Autores principales: | , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
2019
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6656392/ https://www.ncbi.nlm.nih.gov/pubmed/31342010 http://dx.doi.org/10.21105/joss.01408 |
_version_ | 1783438638377336832 |
---|---|
author | Heiland, Randy Mishler, Daniel Zhang, Tyler Bower, Eric Macklin, Paul |
author_facet | Heiland, Randy Mishler, Daniel Zhang, Tyler Bower, Eric Macklin, Paul |
author_sort | Heiland, Randy |
collection | PubMed |
description | Jupyter Notebooks (Kluyver et al., 2016, Perkel (2018)) provide executable documents (in a variety of programming languages) that can be run in a web browser. When a notebook contains graphical widgets, it becomes an easy-to-use graphical user interface (GUI). Many scientific simulation packages use text-based configuration files to provide parameter values and run at the command line without a graphical interface. Manually editing these files to explore how different values affect a simulation can be burdensome for technical users, and impossible to use for those with other scientific backgrounds. xml2jupyter is a Python package that addresses these scientific bottlenecks. It provides a mapping between configuration files, formatted in the Extensible Markup Language (XML), and Jupyter widgets. Widgets are automatically generated from the XML file and these can, optionally, be incorporated into a larger GUI for a simulation package, and optionally hosted on cloud resources. Users modify parameter values via the widgets, and the values are written to the XML configuration file which is input to the simulation’s command-line interface. xml2jupyter has been tested using PhysiCell (Ghaffarizadeh, Heiland, Friedman, Mumenthaler, & Macklin, 2018), an open source, agent-based simulator for biology, and it is being used by students for classroom and research projects. In addition, we use xml2jupyter to help create Jupyter GUIs for PhysiCell-related applications running on nanoHUB (Madhavan et al., 2013). |
format | Online Article Text |
id | pubmed-6656392 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2019 |
record_format | MEDLINE/PubMed |
spelling | pubmed-66563922019-07-24 xml2jupyter: Mapping parameters between XML and Jupyter widgets Heiland, Randy Mishler, Daniel Zhang, Tyler Bower, Eric Macklin, Paul J Open Source Softw Article Jupyter Notebooks (Kluyver et al., 2016, Perkel (2018)) provide executable documents (in a variety of programming languages) that can be run in a web browser. When a notebook contains graphical widgets, it becomes an easy-to-use graphical user interface (GUI). Many scientific simulation packages use text-based configuration files to provide parameter values and run at the command line without a graphical interface. Manually editing these files to explore how different values affect a simulation can be burdensome for technical users, and impossible to use for those with other scientific backgrounds. xml2jupyter is a Python package that addresses these scientific bottlenecks. It provides a mapping between configuration files, formatted in the Extensible Markup Language (XML), and Jupyter widgets. Widgets are automatically generated from the XML file and these can, optionally, be incorporated into a larger GUI for a simulation package, and optionally hosted on cloud resources. Users modify parameter values via the widgets, and the values are written to the XML configuration file which is input to the simulation’s command-line interface. xml2jupyter has been tested using PhysiCell (Ghaffarizadeh, Heiland, Friedman, Mumenthaler, & Macklin, 2018), an open source, agent-based simulator for biology, and it is being used by students for classroom and research projects. In addition, we use xml2jupyter to help create Jupyter GUIs for PhysiCell-related applications running on nanoHUB (Madhavan et al., 2013). 2019-07-01 2019 /pmc/articles/PMC6656392/ /pubmed/31342010 http://dx.doi.org/10.21105/joss.01408 Text en Authors of papers retain copyright and release the work under a Creative Commons Attribution 4.0 International License.(http://creativecommons.org/licenses/by/4.0/). |
spellingShingle | Article Heiland, Randy Mishler, Daniel Zhang, Tyler Bower, Eric Macklin, Paul xml2jupyter: Mapping parameters between XML and Jupyter widgets |
title | xml2jupyter: Mapping parameters between XML and Jupyter widgets |
title_full | xml2jupyter: Mapping parameters between XML and Jupyter widgets |
title_fullStr | xml2jupyter: Mapping parameters between XML and Jupyter widgets |
title_full_unstemmed | xml2jupyter: Mapping parameters between XML and Jupyter widgets |
title_short | xml2jupyter: Mapping parameters between XML and Jupyter widgets |
title_sort | xml2jupyter: mapping parameters between xml and jupyter widgets |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6656392/ https://www.ncbi.nlm.nih.gov/pubmed/31342010 http://dx.doi.org/10.21105/joss.01408 |
work_keys_str_mv | AT heilandrandy xml2jupytermappingparametersbetweenxmlandjupyterwidgets AT mishlerdaniel xml2jupytermappingparametersbetweenxmlandjupyterwidgets AT zhangtyler xml2jupytermappingparametersbetweenxmlandjupyterwidgets AT bowereric xml2jupytermappingparametersbetweenxmlandjupyterwidgets AT macklinpaul xml2jupytermappingparametersbetweenxmlandjupyterwidgets |