Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate TPadManipulator #17

Open
dladams opened this issue Jul 7, 2022 · 7 comments
Open

Separate TPadManipulator #17

dladams opened this issue Jul 7, 2022 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@dladams
Copy link
Contributor

dladams commented Jul 7, 2022

A TPadManipulator objects holds the data to make a Root figure including drawing objects (graphs, histograms, ...) and the instructions to place them on the drawing pad. A figure may be saved in tpad format and later read back, reformatted (changing axis limits, changing colors, adding labels, etc., and then displayed or written to a new file. At present, this can be done in a C++ program, Root script or at the Root command line.

I would like to add the capability to manipulate and view tpad files in Jupyter notebooks. One approach is to build a Jupyter kernel that includes a dunesw release. We would then be able to use TPadManipulator and any other classes with Root dictionaries including dataprep tools. However someone would have to build these kernels for some or all weekly releases and a developer who modified TPadManipulator would have to wait for the next release and build to use that mod.

It would be useful to instead or additionally have a python module that could be imported to add TPadManipulator and Root without bringing in all the dune and larsoft dependencies. I propose to move TPadManipulator to a dedicated package to allow this.

@dladams dladams added the enhancement New feature or request label Jul 7, 2022
@dladams dladams self-assigned this Jul 7, 2022
@dladams
Copy link
Contributor Author

dladams commented Jul 7, 2022

Looking for comments: @tomjunk @calcuttj @Andrew-McNab-UK @mhkirby @hschellman

@dladams
Copy link
Contributor Author

dladams commented Jul 7, 2022

BTW, here is quick intro to Root in jupyter: https://root.cern.ch/notebooks/HowTos/HowTo_ROOT-Notebooks.html

@mhkirby
Copy link
Member

mhkirby commented Jul 8, 2022

Hi David, Which python package does the TPadManipulator currently reside in? Or are you saying that it currently does NOT have a python package that it is a part of? If the question is a dedicated package vs inclusion in an existing package, I'm not sure I have an opinion. Is there a more global benefit to putting it into the PyROOT package vs a dedicated package?

  • Kirby

ps - apologies if I'm asking ill-formed questions, I'm just not familiar enough with the PyROOT stack and packages to know what is and what isn't already included.

@dladams
Copy link
Contributor Author

dladams commented Jul 8, 2022

It is in duncore. I am thinking to put in a dedicated package outside the DUNE SW env The build script would only require that Root be set up.

@dladams
Copy link
Contributor Author

dladams commented Jul 13, 2022

To use TPadManipulator, we first need Root and I don't (yet) know how to install or access it from inside a notebook. One approach (and perhaps best) is to set up Root before starting the analysis server. And if we are going to do that, we might as well set up DUNE packages including dunecore and already have TPadManipulator.

I have asked Burt to provide such a server, Stay tuned....

@mhkirby
Copy link
Member

mhkirby commented Oct 11, 2022 via email

@dladams
Copy link
Contributor Author

dladams commented Nov 18, 2022

Just seeing this. No longer a high priority but still of interest. Yes, I would maintain but can't promise anything if I move off project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants