Skip to content
New issue

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

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

Already on GitHub? # to your account

Better "Report" #6957

Open
janezd opened this issue Dec 14, 2024 · 0 comments
Open

Better "Report" #6957

janezd opened this issue Dec 14, 2024 · 0 comments
Labels
feast This may require a few weeks of work

Comments

@janezd
Copy link
Contributor

janezd commented Dec 14, 2024

Reporting currently opens a dialog with a list view on the left-hand side and an html on the right. Images are stored within the document.

  1. The document size is probably limited, which is the most probable cause of Limited number of plots in html report #6105. This problem seems difficult and nobody touched it in two years, but it makes reporting rather useless.
  2. This functionality (and probably only this functionality) requires Webkit. Webkit is annoying to install (confession: I don't know how to install it in PyQt6, and don't dare to try because I already ruined my development conda environment more than once) and causes problems like Report doesn't displayed and I can't download report #6746.
  3. I'm not sure that images in the report can be saved.
  4. It doesn't look to good. It would requires some styling. Saved HTMLs (and PDFs) look pretty sad.

The only good thing I see is the integration with Orange: once can click on a reported item and bring the workflow back to the state in which the item was produced. I doubt, though, that many use this functionality.

I suggest we think about an alternative: to report, the user can choose a directory into which Orange will write an index.html and where it will drop all images and potentially other files(!). When reporting, Orange would simply add to the index.html, but without undoing any changes the user makes.

To view this report, Orange would open the default browser (and instruct the user to do it, if it doesn't happen automatically). The document would probably take care of refreshing when the file changes.

This would solve all above problems.

  1. Images would be referred to from the document.
  2. Orange would no longer require webkit. (Note: this may break some add-ons if they do not explicitly depend upon it under assumption that Orange does. Text mining?)
  3. Images are already saved. Potentially in vector and bitmap form, for user convenience. Even more: the user can ignore the index.html altogether and use this to just dump images into some directory without the save dialog.
  4. The page can be properly styles (e.g. bootstrap or whatever), it can include the existing interactivity (editing of comment) and add more, such as resizing images, reordering ... (I suppose that we'd have to go with jquery, not react, unfortunately. But we'll live.)

As for the functionality of going back to previous workflows: if we really want it (I don't advocate it), Orange can save snapshots of past workflows in a subdirectory of the report directory. Reported items can contain some kind of ids that can be pasted into Orange.

Finally, it would be amazing if we could integrate reporting with jupyter notebook instead of plain index.html.

@janezd janezd added the feast This may require a few weeks of work label Dec 14, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
feast This may require a few weeks of work
Projects
None yet
Development

No branches or pull requests

1 participant