Author Archives: Marcel Austenfeld

Bio7 3.1 Released

07.02.2020

A new release of Bio7 is available. This update comes with a plethora of new features, improvements and bugfixes.

R ImageJ Analysis Perspective (MacOSX Catalina, Dark Mode)

For those who don’t know Bio7. The application Bio7 is an integrated development environment for ecological modeling, scientific image analysis and statistical analysis.

It also contains a feature complete development environment for R with an advanced R editor, R developer tools and interfaces to perform scientific image analysis with R and the also embedded ImageJ application.

New and Noteworthy

General:

  • Bio7 3.1 RCP (Rich Client Platform) built upon Eclipse 4.14
  • Bundled with AdoptOpenJDK 13.0.2
  • Bundled with R 3.6.2 (Windows only!)
  • New main toolbar action available to create different projects and files in one shot
  • Added a toolbar submenu action to open the ‘Control’ view
  • ‘Dark Mode’ theme automatically enabled on supported OS (MacOSX only!)
  • ‘2D’ perspective (e.g., for cellular automata simulations) is now hidden by default.
  • Removed the ‘Image’ perspective and the ‘Points Panel’ view and actions
  • Updated libraries (SSH for Windows, etc.)
  • Improved the ‘WorldWind’, ‘2D’ and  ‘3D’ perspective to open and arrange the editor area in a user-friendly programming layout by default (see screenshots below).

WorldWind Perspective with opened Java file (MacOSX Catalina, Dark Mode)

2D Perspective with opened Java file (MacOSX Catalina, Dark Mode)

  • JavaFX has been disabled by default in the preferences for Linux HighDPI displays (e.g., GTK scale 2) because of an open bug when embedded in an SWT canvas.
  • Improved the default Bio7 CSS interface colors

R:

  • New toolbar wizard to create quickly R, R Markdown and Shiny files in a project
  • New R Packages tab available to show and update installed R packages (see screenshot below)

Load Packages Tab (MacOSX Catalina, Dark Mode)

  • Changed the ‘Image-Methods’ view to show only R/ImageJ related actions (bidirectional transfer of image data, selection data, particle and cluster methods, etc.)
  • Added the ‘Geometry Selections’ view to the ‘R ImageJ Analysis’ perspective to transfer ROI selection coordinates as a list or georeferenced data geometries (using package ‘sp’ and Java GDAL)
  • Added the KMeans cluster algorithm to the ‘Cluster Pic’ action in the ‘Image-Methods’ view
  • The ‘R ImageJ Analysis’ perspective is now visible by default
  • Improved the ‘Pixel RM’ and ‘Pixel RM Stack’ action to transfer all ROI selections more efficiently, especially for VirtualStacks of ImageJ
  • Added a new option in the ‘Pixel RM’ and ‘Pixel RM Stack’ action to transfer ROI Manager selections signature names according to a separator char (handy for supervised classification with ImageJ and R)
  • Added a new stack transfer API method (‘imageFeatureStackToR’) to transfer whole stacks in a column layout (for pixel classification)
  • The ‘R-Shell’ view list now scrolls to the last selected variables after a workspace refresh
  • New R editor ‘Quickfixes’ available (warning for an assignment operator in function call, check for null and na in comparison operators)
  • Improved the code completion of the ‘R-Shell’ view and the R editor
  • Improved the plot layout in ImageJ (when using the preference option ‘ImageJ View Display Size’ in the Rserve plot preferences)
  • Added a Shiny timeout to improve the server startup
  • Updated the R ANTLR parser

ImageJ:

  • Updated ImageJ to version 1.52t(.51)
  • Added a new ImageJ macro debugger interface
  • Added a new thumbnail action to the context menu of the ‘Navigator’ view to open image and LUT files of a selected directory
  • Added a ‘Detach All Images’ action to transfer all opened tab images to a view (which can be moved and arranged like a separate window)
  • Improved the dark theme for all AWT components
  • Added new default macro editor templates
  • Improved the ImageJ plot windows
  • Improved the detached image view layout
  • Improved the canvas layout for HighDPI displays on Windows
  • Huge amount of other changes since the last release. For all changes, see:https://github.com/Bio7/EclipseImageJ1Plugin

Java:

  • Dynamic compilation now supports Java 13 by default
  • Added a new option to dynamically compile a class without a constructor call (without object creation). The object has to be created in the main method (as known from Java).
  • Updated the Java OpenGL (JOGL) 3D interfaces
  • Updated Java WorldWind to the latest version
  • Fixed the OpenGL view visibility on MacOSX (the ‘3D’ and ‘WorldWind’ view stayed visible when switching to another perspective)
  • Added an experimental fullscreen option to open WorldWind and the ‘3D’ view on a secondary monitor (press F3)
  • Updated Java libraries

Download and Installation:

Windows:

Just download the *.zip distribution file from https://bio7.org and unzip it in your preferred location. Bio7 comes bundled with a Java Runtime Environment, R and Rserve distribution and works out of the box.

Linux:

Download and extract the installation file from https://bio7.org.
For Linux you have to install R and Rserve (see Rserve installation below!).

MacOSX:

Download and extract the installation file from https://bio7.org.

If you start Bio7 a warning or error can occur because of the changes how Apple treats signatures! To allow Bio7 to start see this instructions for Yosemite, Sierra and Mojave:

First try to open the app with the context menu to allow the execution. If that won’t work try the following:

Yosemite: Open an app from an unidentified developer

Sierra: Open an app from an unidentified developer

Moave and Sierra: How to fix “Application” is damaged and can’t be opened error in macOS Mojave and High Sierra.

In addition for MacOSX you have to install R and Rserve (see below!).

Linux and MacOSX Rserve (compiled for cooperative mode) installation:

To install Rserve open the ‘Native R’ console in the ‘Console’ view and then execute the view menu action “Options -> Install Rserve (coop. mode) for R …” for different R versions (SSL 1.1 version for Linux Ubuntu > 19.10). This will download and install Rserve in your default R library location, see video below (please make sure that your default Linux R library install location has writing permissions!):

How to install Rserve for Linux and MacOSX: https://youtu.be/tF7HbRBRIF

In cooperative mode only one connection at a time is allowed (which we want for this Desktop appl.) and all subsequent connections share the same namespace (default on Windows)!

Bio7 Documentation

For more information about Bio7 please consult the soon updated Bio7 User Guide.

A plethora of Bio7 videotutorials for an introduction can be found on YouTube.

Updated Eclipse ImageJ Plugin Available

27.08.2019

I released a new version of the Eclipse ImageJ plugin based on ImageJ 1.52q44.

  • Updated the ImageJ plugin to version 1.52q44
  • Improved the embedded and detached PlotWindows. Now all plot windows are simultaneously resized according to their parent canvas (embedded or detached – animation below)
  • Fixed a bug in the detach menu action (wrong id and panel settings)
  • Removed the ‘*’ tab icon (usually indicating an unsaved editor file) from the detached custom view by deleting the ‘ISaveablePart2’ interface

Github:

https://github.com/Bio7/EclipseImageJ1Plugin

Eclipse Marketplace:

https://marketplace.eclipse.org/content/imagej-plugin

Screenshot (Linux, Darker Dark Theme)

 

 

Bio7 MacOSX And Windows Update Available

19.04.2019

I created an update for MacOSX and Windows which can be easily installed with the Update Manager of Bio7. This update fixes some bugs (which affects Windows and MacOSX only), adds two new scripts in the R-Shell view and updates the ImageJ plugin to version 1.52o33.

Before you update Bio7 make sure that you make a backup of possible installed scripts and ImageJ plugins in the default script and ImageJ plugin location because these two plugins and their preferences will be updated (it might be a good practice to externalize these locations in the Bio7 preferences for updates in the future).

Installation:

1. Add the update sites below to the Update Manager (Help->Install New Software)

2. Add the URL (Location) of the Update Site (see below).

3. Close the Update Manager and then check for Updates (Help->Check for Updates).

4. Select Bio7 and confirm all licenses and unavailable certificates during installation.

Update Sites for Windows and MacOSX:

Windows: https://bio7.org/update/win/repository
Mac: https://bio7.org/update/mac/repository


Easily Built And Share Custom R Menu Scripts With Bio7

09.04.2019

Bio7 can be extended with R packages, Eclipse plugins and ImageJ plugins. Another very easy option to extend the Bio7 Graphical User Interface with R actions are dynamic menus which can be used, e.g., for personalized workflows or repeating tasks.
The provision of new menus and nested menus is simple and can be arranged for different tasks.

Three different menu locations can be populated with custom scripts. One location is the context menu of the R-Shell view.

To extend the R-Shell context menu scripts have to be copied to a default script location of the Bio7 installation. Folders in the locations constitute a new submenu, nested folders results in nested submenus. It is not necessary to restart the application because the menus are updated automatically and copied scripts are instantly available as an executable action

Executable R scripts in a menu can be used for instance to offer different plot actions (there is a special hidden vector variable available ‘.r_shell_vars‘ to get multiple selected objects, e.g., to plot a selected variable (without the need to use a Java to R API!):

plot(get(.r_shell_vars[[1]]))

In addition the different default script locations can be changed in the preferences. This is handy if you want to share scripts in a team using, e.g., GIT for updates and reproducibility.
For Bio7 you can install the Eclipse GIT plugin (Menu: Help->Install New Software, Select ‘Eclipse Repository’, search for ‘git’, select and install ‘Git integration for Eclipse’) to share a local script folder on GitLab, Github, Bitbucket, etc.

A short overview how to create custom menus in the R-Shell context menu is demonstrated in the video below:

Please note that the menus can also be extended with JVM script types which run on the JVM (Java, Jython, Groovy, BeanShell, JavaScript, ImageJ Macro). If a custom interface should be created a selected JVM language can be used to create custom views and populate a special custom perspective.
Special API functions for the interaction of Java and R are available, too.

An example how to build and invoke a custom interface with Java SWT is shown in the video below (a pure Java example installing and using the WindowBuilder plugin):


Bio7 3.0 Released

27.03.2019

A new release of Bio7 is available which is built upon Eclipse 4.11 and the latest Java OpenJDK. This new version comes bundled with OpenJDK 12, supports the dynamic compilation of Java 11 and fixes several annoying bugs on MacOSX (e.g., shutdown crashes).

The R interface has been improved and the R-Shell now updates the workspace display automatically after a R code evaluation or R data transfer.

In additon for Bio7 3.0 the themes have been improved (especially for MacOSX and the Mojave dark mode) and some Touch Bar actions for MacOSX are available, too (if the MacOSX device has a Touch Bar).

Screenshots:

Screenshot MacOSX Mojave (dark mode)

Screenshot Linux Ubuntu 18.10:

Release Notes:

General:

  • Built upon OpenJDK 12 and Eclipse 4.11
  • Bundled with OpenJDK 12
  • Improved script menus
  • Touch Bar actions for MacOSX devices when a Touch Bar is available (can be enabled in the Bio7 preferences)
  • Image perspective is now hidden by default (we have already the ImageJ edit perspective)
  • Updated SSH executables for Windows
  • Multiple Images and PDF files can now be opened from without a lost focus

R:

  • Windows version bundled with R 3.5.3 and Rserve
  • R-Shell displays objects after evaluation
  • More default scripts in the R-Shell scripts menu (PyRserve, Install Rserve, etc.)
  • R-Shell visual improvements (line height of code completion – see preferences)
  • Added Touch Bar actions for MacOSX (can be enabled in the preferences)
  • Clipboard code evaluation improved
  • Improved browser selection for rmarkdown, knitr, R help, etc.
  • Improved text search speed for package installation search (MacOSX)

Java

  • Dynamic compilation of Java 11 supported
  • Added support for Java modules in the preferences (if necessary)
  • Added support for add-on libraries as installable plugins (OSGI)
  • *.java or *.class files can be put in the scripts menu for compilation (*.java) or execution (*.class)
  • Added support to compile Java files on the ImageJ classpath (which is a seperated OSGI classpath) to compile ImageJ plugins with dependent *.jars
  • High dpi scaling for Java Swing and AWT available if configured in the Bio7.ini file (-Dsun.java2d.uiScale=2.0 for high dpi displays)
  • Updated JOGL to version 2.3.2 with custom fixes
  • Changed the 3D interfaces (WorldWind, 3d) to the faster NEWT interface.

Table:

  • Excel export now exports all opened tabs as sheets in one file
  • Images in cells are now exported in excel files, too (anchored at cells)
  • Improved scripts menu

ImageJ:

Huge amount of changes since the last release. For all changes, see:

https://github.com/Bio7/EclipseImageJ1Plugin

Download and Installation:

Windows:

Just download the *.zip distribution file from https://bio7.org and unzip it in your preferred location. Bio7 comes bundled with a Java Runtime Environment, R and Rserve distribution and works out of the box.

Linux:

Download and extract the installation file from https://bio7.org.
For Linux you have to install R and Rserve (see Rserve installation below!).

MacOSX:

Download and extract the installation file from https://bio7.org.

If you start Bio7 a warning or error can occur because of the changes how Apple treats signatures! To allow Bio7 to start see this instructions for Yosemite, Sierra and Mojave:

Yosemite: Open an app from an unidentified developer

Sierra: Open an app from an unidentified developer

Moave and Sierra: How to fix “Application” is damaged and can’t be opened error in macOS Mojave and High Sierra.

In addition for MacOSX you have to install R and Rserve (see below!).

Linux and MacOSX Rserve (compiled for cooperative mode) installation:

To install Rserve open the R shell and then execute the menu action “Options -> Install Rserve (coop. mode) for R …” for different R versions. This will download an install Rserve in your default R library location, see video below (please make sure that your default Linux R library install location has writing permissions!).
In cooperative mode only one connection at a time is allowed (which we want for this Desktop appl.) and all subsequent connections share the same namespace (default on Windows)!

How to install Rserve for Linux and MacOSX: https://youtu.be/tF7HbRBRIF

Installation of Useful R Packages

R packages which are useful in combination with Bio7 can easily be installed with the R-Shell context menu “Packages” action:

R-Shell context menu->Packages->Install_Default_R_Packages

Bio7 Documentation

For more information about Bio7 please consult the soon updated Bio7 User Guide.

A plethora of Bio7 videotutorials for an introduction can be found on YouTube.