Nothing
## ----setup, include=FALSE-----------------------------------------------------
knitr::opts_chunk$set(echo = TRUE,
warning = FALSE,
message = FALSE,
fig.align = "center",
fig.width = 6,
fig.height = 5,
out.width = "60%",
tidy.opts = list(width.cutoff = 65),
tidy = FALSE)
library(loon)
library(grid)
library(gridExtra)
imageDirectory <- file.path(".", "images", "loonPlotsAndGridGraphics")
# dataDirectory <- file.path(".", "data", "loonPlotsAndGridGraphics")
## ----loon plot, eval = FALSE--------------------------------------------------
# library(loon)
# p <- with(mtcars, l_plot(mpg, hp,
# size = 8,
# showScales = TRUE))
## ----query, eval = FALSE------------------------------------------------------
# # x coordinates
# p['x']
## ---- eval = FALSE------------------------------------------------------------
# # point size
# p['size']
## ----plot, eval = FALSE-------------------------------------------------------
# # `p` is a loon widget
# plot(p)
## ---- fig.align="center", echo=FALSE------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotp.png"))
## ----save plot draw, eval = FALSE---------------------------------------------
# g0 <- plot(p)
## ----save plot, eval = FALSE--------------------------------------------------
# g0 <- plot(p, draw = FALSE)
## ----loonGrob, eval = FALSE---------------------------------------------------
# g0 <- loonGrob(p)
## ----draw graphics, eval = FALSE----------------------------------------------
# library(grid)
# grid.newpage()
# grid.draw(g0)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg0.png"))
## ---- eval = FALSE------------------------------------------------------------
# oldColor <- p["color"]
# set.seed(3141)
# selection <- sample(c(TRUE, FALSE),
# size = length(oldColor),
# replace = TRUE)
# p["color"] <- selection
# gtrans <- loonGrob(p)
# p["active"] <- selection
# gauto <- loonGrob(p)
# p["active"] <- !selection
# gmanual <- loonGrob(p)
# p["active"] <- TRUE
# p["color"] <- oldColor
## ---- eval=FALSE--------------------------------------------------------------
# library(gridExtra)
# grid.newpage()
# grid.arrange(g0, gtrans, gauto, gmanual, nrow = 2)
## ---- echo=FALSE, out.width = "80%"------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "gridArrange.png"))
## ----class, eval = FALSE------------------------------------------------------
# class(g0)
## ----grob data structure, eval = FALSE----------------------------------------
# grid.ls(g0)
## ----hierarchy, out.width= "80%", fig.align="center", echo=FALSE--------------
knitr::include_graphics(file.path(imageDirectory, "loonGrobNestedDataTree.png"))
## ----getGrob, eval = FALSE----------------------------------------------------
# # retrieve xlabel grob
# xlabelGrob <- getGrob(g0, "x label")
# xlabelGrob
## ---- eval = FALSE------------------------------------------------------------
# class(xlabelGrob)
## ---- eval = FALSE------------------------------------------------------------
# names(xlabelGrob)
## ---- eval = FALSE------------------------------------------------------------
# xlabelGrob$label
## ---- eval = FALSE------------------------------------------------------------
# xAxisGrob <- getGrob(g0, "x axis")
# names(xAxisGrob)
## ---- eval = FALSE------------------------------------------------------------
# names(xAxisGrob$children)
## ----editGrob, eval = FALSE---------------------------------------------------
# newGrob = editGrob(xlabelGrob,
# label = "Miles per (US) gallon")
## ----editGrob return, eval = FALSE--------------------------------------------
# class(newGrob)
## ----more meaningful label, eval = FALSE--------------------------------------
# newGrob$label
## ----modify grob, eval = FALSE------------------------------------------------
# g0 <- setGrob(gTree = g0,
# gPath = "x label",
# newGrob = newGrob)
## ----redraw, eval = FALSE-----------------------------------------------------
# grid.newpage()
# grid.draw(g0)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg0Xlabel.png"))
## ----alpha, eval = FALSE------------------------------------------------------
# pathGrob <- "points: primitive glyphs"
# newLoonPointsGrob <-
# editGrob(
# getGrob(g0, pathGrob),
# gp = gpar(fill = as_hex6color(p['color']),
# col = l_getOption("foreground"),
# fontsize = 20, # give a larger point size,
# alpha = 0.3 # turn color transparent
# )
# )
# # update loon points grob
# g0 <- setGrob(
# gTree = g0,
# gPath = "points: primitive glyphs",
# newGrob = newLoonPointsGrob
# )
# grid.newpage()
# grid.draw(g0)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg0Alpha.png"))
## ---- eval = FALSE------------------------------------------------------------
# titleGrob <- getGrob(g0, "title: textGrob arguments")
# titleGrob$label
## ---- eval = FALSE------------------------------------------------------------
# class(titleGrob)
## ---- eval = FALSE------------------------------------------------------------
# g1 <- l_instantiateGrob(g0, "title: textGrob arguments",
# label = "1974 Motor Trend cars data",
# gp = gpar(col = "blue",
# fontsize = 8))
# grid.newpage()
# grid.draw(g1)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg1.png"))
## ---- eval = FALSE------------------------------------------------------------
# g2 <- l_instantiateGrob(g0, "title: textGrob arguments",
# label = "1974 Motor Trend cars data",
# gp = gpar(col = "red"))
# g2 <- l_setGrobPlotView(g2)
# grid.newpage()
# grid.draw(g2)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg2.png"))
## ---- eval = FALSE------------------------------------------------------------
# p['showLabels'] <- FALSE
# g3 <- loonGrob(p)
# grid.newpage()
# grid.draw(g3)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg3.png"))
## ---- eval = FALSE------------------------------------------------------------
# grid.ls(g3)
## ---- eval = FALSE------------------------------------------------------------
# g4 <-l_instantiateGrob(g3,
# "title: textGrob arguments",
# x = unit(8, "native"),
# just = "left",
# label = "Motor Trend Magazine 1974")
#
# g4 <-l_instantiateGrob(g4,
# "x label: textGrob arguments",
# label = "Miles per US gallon",
# x = unit(35, "native"),
# y = unit(-1.5, "lines"),
# just = "right",
# gp = gpar(fontsize = 15,
# fontface = "italic",
# col = "blue"))
#
# g4 <-l_instantiateGrob(g4,
# "y label: textGrob arguments",
# label = "Horse power",
# rot = 45,
# x = unit(7, "native"),
# y = unit(275, "native"),
# just = "right",
# gp = gpar(fontsize = 15,
# fontface = "italic",
# col = "blue"))
#
# g4 <- l_setGrobPlotView(g4)
# grid.newpage()
# grid.draw(g4)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg4.png"))
## ---- eval = FALSE------------------------------------------------------------
# # add text glyph
# carNames <- l_glyph_add_text(p, text = rownames(mtcars))
# p['glyph'] <- carNames
# # loonGrob
# g2 <- loonGrob(p)
# getGrob(g2, "points: mixed glyphs")
## ---- eval = FALSE------------------------------------------------------------
# grid.newpage()
# grid.draw(g2)
## ---- echo=FALSE-------------------------------------------------------------
knitr::include_graphics(file.path(imageDirectory, "loonPlotg2Text.png"))
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.