Add implicit export options to the Wiki

Issue #585 new
Robert Leach created an issue

USE CASE: WHAT DO YOU WANT TO DO?

As a long-time java TreeView user, I want to export & make adjustments to export options that were previously accessible in the export interface, such as label selections.

STEPS TO REPRODUCE AN ISSUE (OR TRIGGER A NEW FEATURE)

  1. Use the old command-x keyboard shortcut
  2. Look for the "Export" Menu (which is now under the File menu)
  3. Look for labal selections
  4. Look for the labels "under trees" checkbox
  5. Look for the resolution options

CURRENT BEHAVIOR

Many of the export settings of jTV are now retrieved implicitly from the labels settings and the main matrix window display.

EXPECTED BEHAVIOR

For new users, the interface feels more intuitive, but long-time jTV users will not know how to get what they want. The way the new interface works in comparison to the old interface should be documented in the wiki and linked from the export interface. We should also support legacy keyboard shortcuts such as command-x as additional hidden alternatives to command-e for example. A specific wiki page for jTV and TV3 comparisons might also be useful.

DEVELOPERS ONLY SECTION

SUGGESTED CHANGE (Pseudocode optional)

Add a wiki page and a link from the export interface.

FILES AFFECTED (where the changes will be implemented) - developers only

wiki & ExportDialog

LEVEL OF EFFORT - developers only

trivial

COMMENTS

This issue was prompted by feedback from a user. The following is a response which may be useful in writing up the wiki page:

Perhaps the fact that the layout and usage of TreeView3 changed from java TreeView (jTV) so radically, it may take some adjusting for long-time jTV users (who weren't involved in the gradual development process & focus group) to make the leap from the previous iteration intuitively.  So for the 2 main features you mentioned, let me see if I can either reveal functionality that is accessed in a way that was not expected/clear or alternatively, highlights an oversight of a common use-case we failed to capture using our focus-group approach.  I've gone into a lot of detail here, because I plan to use this response to improve our documentation, particularly for those who are very familiar with jTV...

Export: We support 2 types of export (though one isn't referred to as "export" anymore).

First is image/postscript export:  There are 2 ways to access the export interface: 1. Via keyboard shortcut (mac: command-e windows: ctrl-e) 2. Via menu: File->Export...  Both methods bring up the export dialog window where you can customize the exported image.  Putting the export feature in the File menu is different from java TreeView, but mimics the menu layout of most modern-day apps more closely.

Our image/postscript export feature supports all the same features as jTV's image/postscript export except:

1. Exporting trees only
2. Positioning the labels above the tree
3. Excluding the file extension
4. Export to jpeg format

We noticed that most users tended to manipulate exported images/files in image editors regardless of the ability to set these options in the export interface.  If the user wants the trees only for example, they can extract them from the exported file, though we do have a proposed tree-only export feature documented on our issues page.  All other controls in jTV's export interface, while not explicitly visible, are adjustable in TreeView3 as well, but we provide those features implicitly.  For example, the export image size/scale is determined by the selected label font size to result in image dimensions selected to optimally fit the labels and the selected size.  Scaling images up or down is also something that can be achieved (at a detailed resolution) by an image editor (though admittedly label resolution would degrade - but again, you can export after increasing the label font size).  The selection of which and how many labels to include is also retrieved from the label settings.  Selecting a file name and location is also now a separate dialog window which appears once the export button is clicked.  This allows us to take advantage of the user's file system interface settings, such as shortcuts, sidebar, drag & drop, and recent folder locations.  We did have a JPG export format initially, but decided that compression effects and effects on color were not consistent with the intended use of TV3 and took it out.  Overall, when it comes to export, we went with a more modern/streamlined approach: allow the user to setup the view they want in the main window, then export it.  It results what we feel is a cleaner/more concise/less busy interface while still providing many of the same options.  What we didn't include are features that can be applied using other apps.

We also have added and fixed a number of image/postscript export features compared to jTV, including:

1. Export of both selection *and* zoomed region
2. Inclusion of selection boxes and tree/label highlighting
3. We added an aspect ratio option of "as seen on screen"
4. Export to PDF and SVG format
5. We fixed the image preview and the export-selection checkbox which didn't work for many users in certain cases
6. Updated file name/location dialog window
7. Cancel-able export progress bar
8. Catching of out of memory errors during export with the option to restart TV3 with more memory
9. The ability to adjust the aspect ratio of the exported matrix (implicitly) by manipulating the window/matrix-panel dimensions
10. The ability to export larger matrices
11. Automatic disabling of options that would result in too much required memory for export
12. The ability to draw only the labels corresponding to a selection in the exported image
13. The ability to export labels in different fonts (implicitly, given the label settings)
14. The ability to export the labels as either left or right justified (implicitly, given the label settings)
15. A single unified image and postscript export interface
16. Selection of paper size for PDF/SVG/postscript export
17. Selection of landscape or portrait orientation for PDF/SVG/postscript export

The second export feature we provide is the ability to "Copy Labels".  To  use this feature, you must either right- or control-click on the desired labels pane and select Copy labels->{All, Selected, or Zoomed}.  You can then paste those labels into a text file.

You can also save matrices you've clustered in a new matrix (and gtr/atr) file(s) using File->Save as...

There are 3 other types of export (related to the matrix) that jTV had that we have not included and which have not, as yet, been requested: the export of color presets, the export/saving of sub-matrix data, and the export of trees only.  Since we improved data import, the ability to save sub-matrices was generally deemed as low-priority since the data could be easily edited in a spreadsheet application and re-imported.  Likewise, trees case be extracted from exported images.

2-windows: The ability to open multiple treeview windows was not a feature that has been requested before.  I could try to imagine how that might be useful, but from someone who has actually used multiple windows in a meaningful way, it would be useful to hear from you, how you use multiple concurrent windows and what that allows you to do that you cannot do with a single window.  (Note, as a quick fix for your use-case, you could either export a matrix "as seen on screen" to view it along side the TreeView3 app or simply create a copy of the TreeView3 app and run both apps side-by-side.)

There are numerous issues on the issue page of our bitbucket development site for adding features such as some of those I've mentioned above (though the ability to open multiple windows is not there).  If you would find any new features useful, you can either submit/vote-for those issues to be included in the next release, or submit a pull request.  Our code is open source and as such, we encourage forking the project and submitting changes that you may elect to implement.  If you would like to take a stab at it, please consult our contributing document.  Otherwise, we would be interested to hear more about features in jTV you frequently use that are not in TreeView3.  If you'd like to vote for any potential documented features, here are some you may be interested in:

#505: Export tree & labels without the matrix
#384: Add a resolution option to the export dialog
#372: Add a color guide option for the exported image
#31: Open new file with (or crop or export) selected area
#12: Copy or export data of selection or visible area

I will add a feature to the issues to implement the ability to have multiple windows/files open.  I may also add an issue to add documentation for much of what I've said in this email.

We had hoped that the development process we designed, which included regularly sharing alpha releases and soliciting feedback from Alok and Alok's subscribed email list (along with other long-time dedicated treeview users we gathered together), over the 3-4 year development effort our small team put into TreeView3, would result in a tool that most java Treeview users would find useful.  Our strategy was to strip down to the core features and build things back in using a new more modern interface paradigm, as our focus group requested them.  There are numerous potential features documented on our development site for the next release and feedback such as yours is valuable when deciding what to implement next.  It's impossible to capture every use-case and we were aware that the loss of, for example, some of lesser-used plugin-based features would eliminate some use-cases.  But generally, aside from a few minor feature requests, all the feedback we've received in the past 4 years has been very positive.  This is the first example of an oversight of missing core functionality we've received since beginning development in 2013.

Comments (0)

  1. Log in to comment