Title: | Automated and Manual Extraction of Numerical Data from Scientific Images |
---|---|
Description: | Provides a GUI interface for automating data extraction from multiple images containing scatter and bar plots, semi-automated tools to tinker with extraction attempts, and a fully-loaded point-and-click manual extractor with image zoom, calibrator, and classifier. Also provides detailed and R-independent extraction reports as fully-embedded .html records. |
Authors: | Marc J. Lajeunesse [aut, cre] |
Maintainer: | Marc J. Lajeunesse <[email protected]> |
License: | GPL (>= 2) |
Version: | 0.2 |
Built: | 2025-02-03 03:54:25 UTC |
Source: | https://github.com/mjlajeunesse/juicr |
juicr is a GUI interface for automating data extraction from multiple images containing scatter and bar plots, semi-automated tools to tinker with extraction attempts, and a fully-loaded point-and-click manual extractor with image zoom, calibrator, and classifier. Also provides detailed and R-independent extraction reports as fully-embedded .html records. More information about juicr can be found at http://lajeunesse.myweb.usf.edu/.
What to cite?
Lajeunesse, M.J. (2021) Automated,
semi-automated, and manual extraction of numerical data from scientific
images, plot, charts, and figures. R package, v.0.1
Installation and Dependencies.
juicr has one
external dependency that need to be installed and loaded prior to use in R.
This is the EBImage R package (Pau et al. 2010) available only from the
Bioconductor repository: https://www.bioconductor.org/.
To properly install juicr, start with the following
R script that loads the Bioconductor resources needed to install the EBImage
(also accept all of its dependencies): install.packages("BiocManager");
BiocManager::install("EBImage"))
library(metagear)
Finally for Mac OS users, installation
is sometimes not straighforward as the GUI_juicr() requires the
Tcl/Tk GUI toolkit to be installed. You can get this toolkit by making sure
the latest X11 application (xQuartz) is installed from here:
https://www.xquartz.org/.
Marc J. Lajeunesse (University of South Florida, Tampa USA)
Pau, G., Fuchs, F., Sklyar, O., Boutros, M. and Huber, W. (2010) EBImage: an R package for image processing with applications to cellular phenotypes. Bioinformatics 26: 979-981.
Reads a juicr generated report of image extractions contained within the .html file.
file_getJuicr_Extractions(aFileName = file.choose(), quiet = FALSE)
file_getJuicr_Extractions(aFileName = file.choose(), quiet = FALSE)
aFileName |
The file name and location of a *_juicr.html report. Prompts for file name if none is explicitly called. Must be .html format. |
quiet |
When |
A list of tables including all extractions, coordinates, image file
names, and juicr
GUI parameters.
## Not run: theExtraction <- file_getJuicr_Extractions("pretend_image_juicr.html") print(theExtraction$points) ## End(Not run)
## Not run: theExtraction <- file_getJuicr_Extractions("pretend_image_juicr.html") print(theExtraction$points) ## End(Not run)
Reads a juicr generated report of image extractions contained within the .html file, and saves all images (e.g., original, standardized, and standardized with painted extractions).
file_getJuicr_Images(aFileName = file.choose(), quiet = FALSE)
file_getJuicr_Images(aFileName = file.choose(), quiet = FALSE)
aFileName |
The file name and location of a *_juicr.html report. Prompts for file name if none is explicitly called. Must be .html format. |
quiet |
When |
A vector of file names of each image extracted from the .html file.
## Not run: file_getJuicr_Images("pretend_image_juicr.html") ## End(Not run)
## Not run: file_getJuicr_Images("pretend_image_juicr.html") ## End(Not run)
A GUI screener to help scan and evaluate the title and abstract of studies to be included in a systematic review or meta-analysis. A description of GUI options and layout is found here: http://lajeunesse.myweb.usf.edu/juicr/juicr_basic_vignette_v0.1.html.
GUI_juicr( theFigureFile = "", theJuicrFile = "", standardizeTheImage = TRUE, standardSize = 1000, figureWindowSize = c(800, 600), pointSize = 6, animateDelay = TRUE, groupNames = c("orangeGrp", "berryGrp", "cherryGrp", "plumGrp", "kiwiGrp", "bananaGrp", "grapeGrp", "pruneGrp"), groupColors = c("dark orange", "turquoise3", "tomato3", "orchid", "yellow green", "goldenrod2", "plum4", "saddle brown") )
GUI_juicr( theFigureFile = "", theJuicrFile = "", standardizeTheImage = TRUE, standardSize = 1000, figureWindowSize = c(800, 600), pointSize = 6, animateDelay = TRUE, groupNames = c("orangeGrp", "berryGrp", "cherryGrp", "plumGrp", "kiwiGrp", "bananaGrp", "grapeGrp", "pruneGrp"), groupColors = c("dark orange", "turquoise3", "tomato3", "orchid", "yellow green", "goldenrod2", "plum4", "saddle brown") )
theFigureFile |
An optional file name and location of a .jpg, .png, or .tiff file containing the scientific image/plot/chart/figure to pre-load in the GUI. Within the GUI there is also a button to select the image file. Images in other formats should be converted to .png prior to using juicr. |
theJuicrFile |
An optional file name and location of a *_juicr.html report containing extractions and images from a previous juicr session to pre-load into the GUI. Within the GUI there is also a button to select an .html file. |
standardizeTheImage |
When |
standardSize |
The common width in pixels for standardizing large images; default is a width of 1000 pixels. |
figureWindowSize |
Specifies the window size containing the image. By default, this image-viewer window will be 800 (width) by 600 (height) pixels, larger images will be scrollable to fit this window. |
pointSize |
Changes the default size of a clickable data-point on the image. Size is the radius in pixels (default is 6). |
animateDelay |
When |
groupNames |
A vector of the default eight names specifying the labels of each group. Default labels are fruit themed. Can be any size, but GUI will only print first 9 characters. |
groupColors |
A vector of the default eight color names specifying the coloring of each group. Are in color-names format, but can also be HEX. |
A console message of where saved .csv or *_juicr.html files are located.
Installation and troubleshooting
For Mac OS users,
installation is sometimes not straighforward as this GUI requires the
Tcl/Tk GUI toolkit to be installed. You can get this toolkit by making sure
the latest X11 application (xQuartz) is installed, see here:
https://www.xquartz.org/. More information on
installation is found in juicrs
's vignette.
## Not run: GUI_juicr(system.file("images", "Kortum_and_Acymyan_2013_Fig4.jpg", package = "juicr")) ## End(Not run)
## Not run: GUI_juicr(system.file("images", "Kortum_and_Acymyan_2013_Fig4.jpg", package = "juicr")) ## End(Not run)
A jpg image of a scatterplot from Figure 2 of Kam, M., Cohen-Gross, S., Khokhlova, I.S., Degen, A.A. and Geffen, E. 2003. Average daily metabolic rate, reproduction and energy allocation during lactation in the Sundevall Jird Meriones crassus. Functional Ecology 17:496-503.
A raw jpg-formated image
How to usereadImage(system.file("images", "Kam_et_al_2003_Fig2.jpg", package = "juicr"))
A jpg image of a bar plot from Figure 4 of Kortum, P., and Acymyan, C.Z. 2013. How low can you go? Is the System Usability Scale range restricted? Journal of Usability Studies 9:14-24.
A raw jpg-formated image
How to usereadImage(system.file("images", "Kortum_and_Acymyan_2013_Fig4.jpg", package = "juicr"))