diff --git a/dev/pkgdown.yml b/dev/pkgdown.yml index 6b51c80..f11a8fd 100644 --- a/dev/pkgdown.yml +++ b/dev/pkgdown.yml @@ -5,7 +5,7 @@ articles: marquee_style: marquee_style.html marquee_syntax: marquee_syntax.html marquee: marquee.html -last_built: 2025-01-16T13:17Z +last_built: 2025-01-16T20:22Z urls: reference: https://marquee.r-lib.org/reference article: https://marquee.r-lib.org/articles diff --git a/dev/reference/element_marquee.html b/dev/reference/element_marquee.html index 486167b..1192984 100644 --- a/dev/reference/element_marquee.html +++ b/dev/reference/element_marquee.html @@ -174,7 +174,6 @@

ExamplesWhat more could you _possibly_ want?") + theme(title = element_marquee()) #> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`. -#> Warning: Group definition failed diff --git a/dev/reference/geom_marquee-4.png b/dev/reference/geom_marquee-4.png index f555e29..6ecc48b 100644 Binary files a/dev/reference/geom_marquee-4.png and b/dev/reference/geom_marquee-4.png differ diff --git a/dev/reference/geom_marquee.html b/dev/reference/geom_marquee.html index e8a459c..e0f0917 100644 --- a/dev/reference/geom_marquee.html +++ b/dev/reference/geom_marquee.html @@ -236,7 +236,6 @@

Examples border_radius = 3 ) p + geom_marquee(aes(label = rownames(mtcars), fill = gear), style = label_style) -#> Warning: Group definition failed # Use markdown to style the text diff --git a/dev/reference/guide_marquee-5.png b/dev/reference/guide_marquee-5.png index 6966bfa..ac187ee 100644 Binary files a/dev/reference/guide_marquee-5.png and b/dev/reference/guide_marquee-5.png differ diff --git a/dev/reference/guide_marquee-6.png b/dev/reference/guide_marquee-6.png index 6966bfa..ac187ee 100644 Binary files a/dev/reference/guide_marquee-6.png and b/dev/reference/guide_marquee-6.png differ diff --git a/dev/reference/guide_marquee.html b/dev/reference/guide_marquee.html index 9dc3378..5435809 100644 --- a/dev/reference/guide_marquee.html +++ b/dev/reference/guide_marquee.html @@ -147,7 +147,6 @@

Examples name = "Cars with four wheel <<4>>, forward <<f>> or reverse <<r>> drive.", guide = "marquee" ) -#> Warning: Group definition failed # Recolouring text @@ -167,7 +166,6 @@

Examples# Using background instead of text colour by setting it to NULL st <- style(color = "black", background = NULL) base + guides(colour = guide_marquee(style = st)) -#> Warning: Group definition failed # Customising style of each label through style sets @@ -178,13 +176,11 @@

Examplesst <- modify_style(st, tag = "lab_r", border_size = trbl(1), color = "black", background = NA) base + guides(colour = guide_marquee(style = st)) -#> Warning: Group definition failed # Alternatively: base + guides(colour = "marquee") + theme(plot.subtitle = element_marquee(style = st)) -#> Warning: Group definition failed # Splicing in labels by number (!!2) or label (!!subcompact) diff --git a/dev/reference/ink.html b/dev/reference/ink.html index 1964517..1ef2d37 100644 --- a/dev/reference/ink.html +++ b/dev/reference/ink.html @@ -113,7 +113,6 @@

Examples width = NA ) ) -#> Warning: Group definition failed # Standard justification grid.draw( diff --git a/dev/search.json b/dev/search.json index fe262df..7bfe6cf 100644 --- a/dev/search.json +++ b/dev/search.json @@ -1 +1 @@ -[{"path":[]},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"our-pledge","dir":"","previous_headings":"","what":"Our Pledge","title":"Contributor Covenant Code of Conduct","text":"members, contributors, leaders pledge make participation community harassment-free experience everyone, regardless age, body size, visible invisible disability, ethnicity, sex characteristics, gender identity expression, level experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, sexual identity orientation. pledge act interact ways contribute open, welcoming, diverse, inclusive, healthy community.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"our-standards","dir":"","previous_headings":"","what":"Our Standards","title":"Contributor Covenant Code of Conduct","text":"Examples behavior contributes positive environment community include: Demonstrating empathy kindness toward people respectful differing opinions, viewpoints, experiences Giving gracefully accepting constructive feedback Accepting responsibility apologizing affected mistakes, learning experience Focusing best just us individuals, overall community Examples unacceptable behavior include: use sexualized language imagery, sexual attention advances kind Trolling, insulting derogatory comments, personal political attacks Public private harassment Publishing others’ private information, physical email address, without explicit permission conduct reasonably considered inappropriate professional setting","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"enforcement-responsibilities","dir":"","previous_headings":"","what":"Enforcement Responsibilities","title":"Contributor Covenant Code of Conduct","text":"Community leaders responsible clarifying enforcing standards acceptable behavior take appropriate fair corrective action response behavior deem inappropriate, threatening, offensive, harmful. Community leaders right responsibility remove, edit, reject comments, commits, code, wiki edits, issues, contributions aligned Code Conduct, communicate reasons moderation decisions appropriate.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"scope","dir":"","previous_headings":"","what":"Scope","title":"Contributor Covenant Code of Conduct","text":"Code Conduct applies within community spaces, also applies individual officially representing community public spaces. Examples representing community include using official e-mail address, posting via official social media account, acting appointed representative online offline event.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"enforcement","dir":"","previous_headings":"","what":"Enforcement","title":"Contributor Covenant Code of Conduct","text":"Instances abusive, harassing, otherwise unacceptable behavior may reported community leaders responsible enforcement codeofconduct@posit.co. complaints reviewed investigated promptly fairly. community leaders obligated respect privacy security reporter incident.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"enforcement-guidelines","dir":"","previous_headings":"","what":"Enforcement Guidelines","title":"Contributor Covenant Code of Conduct","text":"Community leaders follow Community Impact Guidelines determining consequences action deem violation Code Conduct:","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"id_1-correction","dir":"","previous_headings":"Enforcement Guidelines","what":"1. Correction","title":"Contributor Covenant Code of Conduct","text":"Community Impact: Use inappropriate language behavior deemed unprofessional unwelcome community. Consequence: private, written warning community leaders, providing clarity around nature violation explanation behavior inappropriate. public apology may requested.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"id_2-warning","dir":"","previous_headings":"Enforcement Guidelines","what":"2. Warning","title":"Contributor Covenant Code of Conduct","text":"Community Impact: violation single incident series actions. Consequence: warning consequences continued behavior. interaction people involved, including unsolicited interaction enforcing Code Conduct, specified period time. includes avoiding interactions community spaces well external channels like social media. Violating terms may lead temporary permanent ban.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"id_3-temporary-ban","dir":"","previous_headings":"Enforcement Guidelines","what":"3. Temporary Ban","title":"Contributor Covenant Code of Conduct","text":"Community Impact: serious violation community standards, including sustained inappropriate behavior. Consequence: temporary ban sort interaction public communication community specified period time. public private interaction people involved, including unsolicited interaction enforcing Code Conduct, allowed period. Violating terms may lead permanent ban.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"id_4-permanent-ban","dir":"","previous_headings":"Enforcement Guidelines","what":"4. Permanent Ban","title":"Contributor Covenant Code of Conduct","text":"Community Impact: Demonstrating pattern violation community standards, including sustained inappropriate behavior, harassment individual, aggression toward disparagement classes individuals. Consequence: permanent ban sort public interaction within community.","code":""},{"path":"https://marquee.r-lib.org/dev/CODE_OF_CONDUCT.html","id":"attribution","dir":"","previous_headings":"","what":"Attribution","title":"Contributor Covenant Code of Conduct","text":"Code Conduct adapted Contributor Covenant, version 2.1, available https://www.contributor-covenant.org/version/2/1/code_of_conduct.html. Community Impact Guidelines inspired [Mozilla’s code conduct enforcement ladder][https://github.com/mozilla/inclusion]. answers common questions code conduct, see FAQ https://www.contributor-covenant.org/faq. Translations available https://www.contributor-covenant.org/translations.","code":""},{"path":"https://marquee.r-lib.org/dev/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"MIT License","title":"MIT License","text":"Copyright (c) 2024 marquee authors Permission hereby granted, free charge, person obtaining copy software associated documentation files (“Software”), deal Software without restriction, including without limitation rights use, copy, modify, merge, publish, distribute, sublicense, /sell copies Software, permit persons Software furnished , subject following conditions: copyright notice permission notice shall included copies substantial portions Software. SOFTWARE PROVIDED “”, WITHOUT WARRANTY KIND, EXPRESS IMPLIED, INCLUDING LIMITED WARRANTIES MERCHANTABILITY, FITNESS PARTICULAR PURPOSE NONINFRINGEMENT. EVENT SHALL AUTHORS COPYRIGHT HOLDERS LIABLE CLAIM, DAMAGES LIABILITY, WHETHER ACTION CONTRACT, TORT OTHERWISE, ARISING , CONNECTION SOFTWARE USE DEALINGS SOFTWARE.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"requirements","dir":"Articles","previous_headings":"","what":"Requirements","title":"marquee","text":"start note marquee build future. mean based slew new features R graphics engine putting hard requirements R version can used graphics devices works . , reason, setup accommodate needs can perhaps get way using gridtext/ggtext. nuisance likely diminish completely disappear time.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"an-example","dir":"Articles","previous_headings":"","what":"An example","title":"marquee","text":"small example can see markdown behaves ’d expect. emphasis, strong, underline, strikethrough, stuff like headings etc. fact, full markdown (CommonMark) spec supported behave ’d expect. Besides standard grob arguments ’d expect, marquee_grob() takes two main arguments can see . text, can character vector multiple separate markdown strings, style specification, can vector styles single style format everything alike. Marquee ships classic_style() designed mimic look standard HTML rendered markdown. function allows modify final style, also modify construction create completely new style: Besides standard markdown, marquee also allows create custom span classes. span classes can styled anything, marquee contains nifty feature , class matches recognized color name hex-code, automatically coloured. provide styling custom class takes precedence matching color name","code":"md_text <- \"# Lorem Ipsum Lorem ipsum dolor sit amet, *consectetur* adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna **aliqua**. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo _consequat_. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla ~pariatur~. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\" grob <- marquee_grob(md_text, classic_style()) grid.draw(grob) new_style <- classic_style(body_font = \"serif\", header_font = \"mono\", hanging = em(1)) new_style <- modify_style( new_style, \"str\", background = \"lightgrey\", border_radius = 3, padding = trbl(em(0.2)) ) grid.draw( marquee_grob(md_text, new_style) ) md_text_custom <- \"# Lorem Ipsum Lorem ipsum dolor {.red sit amet, *consectetur* adipiscing elit, sed do} eiusmod tempor incididunt ut labore et dolore magna **aliqua**. Ut enim ad minim {#2af veniam}, quis nostrud exercitation ul lamcolaboris nisi ut aliquip ex ea commodo _consequat_. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla ~pariatur~. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\" grid.draw( marquee_grob(md_text_custom, classic_style()) ) grid.draw( marquee_grob(md_text_custom, modify_style(classic_style(), \"red\", tracking = 400)) )"},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"use-in-ggplot2","dir":"Articles","previous_headings":"","what":"Use in ggplot2","title":"marquee","text":"Recognizing people doesn’t make visualizations directly grid, marquee also contains infrastructure use markdown inside ggplot2 plots. expected functions eventually move ggplot2 proper, package stress tested stay .","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"the-marquee-geom","dir":"Articles","previous_headings":"Use in ggplot2","what":"The marquee geom","title":"marquee","text":"One way use marquee ggplot2 geom_marquee(). supersedes geom_text() geom_label() capabilities, even don’t need plot rich text, styling geom_marquee() much capable: However, main use probably mix italicized, bold, colored fonts labels, marquee makes easy Another use geom, rich text may come play, annotations. Let’s make textbox style add lorem ipsum plot","code":"fancy_font <- classic_style( weight = \"semibold\", features = systemfonts::font_feature( ligatures = c(\"standard\", \"discretionary\"), letters = c(\"stylistic\", \"swash\", \"historical\") ) ) ggplot(mtcars, aes(disp, mpg, label = rownames(mtcars))) + geom_marquee(style = fancy_font, size = 2.5, family = \"spectral\") # You may not have this font cars <- sub(\"(\\\\w+)\", \"{.red ***\\\\1***}\", rownames(mtcars)) cars #> [1] \"{.red ***Mazda***} RX4\" \"{.red ***Mazda***} RX4 Wag\" #> [3] \"{.red ***Datsun***} 710\" \"{.red ***Hornet***} 4 Drive\" #> [5] \"{.red ***Hornet***} Sportabout\" \"{.red ***Valiant***}\" #> [7] \"{.red ***Duster***} 360\" \"{.red ***Merc***} 240D\" #> [9] \"{.red ***Merc***} 230\" \"{.red ***Merc***} 280\" #> [11] \"{.red ***Merc***} 280C\" \"{.red ***Merc***} 450SE\" #> [13] \"{.red ***Merc***} 450SL\" \"{.red ***Merc***} 450SLC\" #> [15] \"{.red ***Cadillac***} Fleetwood\" \"{.red ***Lincoln***} Continental\" #> [17] \"{.red ***Chrysler***} Imperial\" \"{.red ***Fiat***} 128\" #> [19] \"{.red ***Honda***} Civic\" \"{.red ***Toyota***} Corolla\" #> [21] \"{.red ***Toyota***} Corona\" \"{.red ***Dodge***} Challenger\" #> [23] \"{.red ***AMC***} Javelin\" \"{.red ***Camaro***} Z28\" #> [25] \"{.red ***Pontiac***} Firebird\" \"{.red ***Fiat***} X1-9\" #> [27] \"{.red ***Porsche***} 914-2\" \"{.red ***Lotus***} Europa\" #> [29] \"{.red ***Ford***} Pantera L\" \"{.red ***Ferrari***} Dino\" #> [31] \"{.red ***Maserati***} Bora\" \"{.red ***Volvo***} 142E\" ggplot(mtcars) + aes(disp, mpg, label = cars) + geom_marquee() text_box_style <- modify_style( classic_style(base_size = 2), \"body\", padding = skip_inherit(trbl(10)), border_radius = 3 ) ggplot(mtcars) + aes(disp, mpg, label = cars) + geom_marquee(size = 2) + annotate(GeomMarquee, label = md_text, x = 450, y = 35, style = text_box_style, size = 2, fill = \"lightgrey\", width = 0.3, hjust = \"right\", vjust = \"top\" )"},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"the-marquee-element","dir":"Articles","previous_headings":"Use in ggplot2","what":"The marquee element","title":"marquee","text":"Rich text plotted text probably limited use, need really need . Different formatting text surrounds plot. tend treat text rich text want full control styling. Enter element_marquee(), drop-substitute element_text() format style non-plotting text. can seen, defaults let text run long needs without text wrapping. makes alignment behave way element_text(). However, lot text like , certainly want turn feature. setting width. 1 equivalent width area element occupies natural value , can set grid::unit() value wish.","code":"ggplot(mtcars) + aes(disp, mpg, label = cars) + geom_marquee(size = 2) + ggtitle(md_text) + theme(plot.title = element_marquee(size = 9)) ggplot(mtcars) + aes(disp, mpg, label = cars) + geom_marquee(size = 2) + ggtitle(md_text) + theme(plot.title = element_marquee(size = 9, width = 1))"},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"a-bit-about-images","dir":"Articles","previous_headings":"","what":"A bit about images","title":"marquee","text":"Markdown famously supports images ![]() syntax. marquee course (means can put images everywhere ggplot2 wish). Currently, support PNG, JPEG, SVG, latter responsive resizing etc. images can reside online computer — “just work”. image placed inline sized fit height line adjusting width keep correct aspect ratio. image placed , expands fill provided width, width height calculated match aspect ratio image. Compare However, marquee pretty unique trick ’s sleeve compared markdown formats. doesn’t just accept paths images — also accepts R graphic objects (currently grid grobs, ggplot2 plots patchwork plots). works ’d expect:","code":"md_text_fig <- \"# Lorem Ipsum ![](https://cran.r-project.org/Rlogo.svg) Lorem ipsum dolor {.red sit amet, *consectetur* adipiscing elit, sed do} eiusmod tempor incididunt ut labore et dolore magna **aliqua**. Ut enim ad minim {#2af veniam}, quis nostrud exercitation ul lamcolaboris nisi ut aliquip ex ea commodo _consequat_. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla ~pariatur~. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\" grid.draw(marquee_grob(md_text_fig, classic_style())) md_text_fig2 <- \"# Lorem Ipsum ![](https://cran.r-project.org/Rlogo.svg) Lorem ipsum dolor {.red sit amet, *consectetur* adipiscing elit, sed do} eiusmod tempor incididunt ut labore et dolore magna **aliqua**. Ut enim ad minim {#2af veniam}, quis nostrud exercitation ul lamcolaboris nisi ut aliquip ex ea commodo _consequat_. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla ~pariatur~. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\" grid.draw(marquee_grob(md_text_fig2, classic_style())) p <- ggplot(mtcars) + geom_histogram(aes(x = gear)) md_text_plot <- \"# Lorem Ipsum ![](p) Lorem ipsum dolor {.red sit amet, *consectetur* adipiscing elit, sed do} eiusmod tempor incididunt ut labore et dolore magna **aliqua**. Ut enim ad minim {#2af veniam}, quis nostrud exercitation ul lamcolaboris nisi ut aliquip ex ea commodo _consequat_. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla ~pariatur~. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\" grid.draw(marquee_grob(md_text_plot, classic_style())) #> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`."},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"a-bit-about-tables","dir":"Articles","previous_headings":"","what":"A bit about tables","title":"marquee","text":"table markdown syntax supported marquee. However, can still include tables marquee, much styling support standard markdown table syntax provide. magic extension talked . point, gt table objects recognized valid objects image tag path can thus included directly output. show power table specification taken gt introduction: support still somewhat experimental gt--grob conversion getting build . gt features rely HTML formatting still end looking weird, standard table inclusion works expected.","code":"library(gt) airquality_m <- airquality[1:10, ] airquality_m$Year <- 1973L table <- gt(airquality_m) table <- tab_header(table, title = \"New York Air Quality Measurements\", subtitle = \"Daily measurements in New York City (May 1-10, 1973)\" ) table <- tab_spanner(table, label = \"Time\", columns = c(Year, Month, Day) ) table <- tab_spanner(table, label = \"Measurement\", columns = c(Ozone, Solar.R, Wind, Temp) ) md_text_table <- \"# Lorem Ipsum Below we have a table created with gt ![](table) *Such tables, much cells*\" grid.draw(marquee_grob(md_text_table, classic_style()))"},{"path":"https://marquee.r-lib.org/dev/articles/marquee.html","id":"wrapping-up","dir":"Articles","previous_headings":"","what":"Wrapping up","title":"marquee","text":"give enough overview get started. Marquee Style Marquee Syntax vignettes provides bit detail respective areas need dive deeper.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_style.html","id":"a-slightly-less-cascading-style-specification","dir":"Articles","previous_headings":"","what":"A slightly less cascading style specification","title":"Marquee Styling","text":"HTML CSS take care styling , years morphed sprawling powerful language ’s . complicated support something like marquee, complicated needed styling markdown (’s main goal style full webpages, documents). Marquee instead defines ’s limited styling system simple enough reason , powerful enough support needed markdown text. Many concepts borrowed CSS used feel pretty much home.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_style.html","id":"styles","dir":"Articles","previous_headings":"A slightly less cascading style specification","what":"Styles","title":"Marquee Styling","text":"marquee, style defines full specification element (block span) visually appear. holds 24 different settings concerning everything font rendering, spacing, coloring, alignment. Rather going , ’ll point towards documentation style() function. span block elements takes style specifications, settings apply block elements ignored spans. lineheight, align, indent, hanging, margin, bullets, img_asp.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_style.html","id":"style-sets","dir":"Articles","previous_headings":"A slightly less cascading style specification","what":"Style sets","title":"Marquee Styling","text":"style set collection styles, style related specific type element. need provide style elements text, elements doesn’t need complete. hard requirement contains complete style named base, everything else can derived. marquee ships style set called classic_style() aims mimic standard look rendered markdown. New style sets can either build ground based classic_style().","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_style.html","id":"inheritance","dir":"Articles","previous_headings":"A slightly less cascading style specification","what":"Inheritance","title":"Marquee Styling","text":"Marquee uses simple inheritance model ’s styling, can boiled single short sentance: element inherits unspecified ’s parent element. setting style object set NULL inherited parent way base style (reason style must complete). example, let’s look style em element classic_style(): thing touches italic setting, everything else borrowed whatever element placed . two ways influence style inheritance. first one wrapping value skip_inherit(). instruct marquee inherit value one level hierarchy rather direct parent (parent parent also set skip_inherit() moves yet another level, ). second one wrapping numeric value relative() instruct marquee use relative value multiplier applied parent.","code":"classic_style()[[1]]$em #> #> italic: TRUE"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_style.html","id":"sizing","dir":"Articles","previous_headings":"A slightly less cascading style specification","what":"Sizing","title":"Marquee Styling","text":"sizes style (big)points (distinction bigpoints points rather small boring. Bigpoints 1/72 inches, use). Instead setting style setting directly numeric value, can make relative font size style using em(). beneficial e.g. padding, margin, indent, etc. often want scale font size. case set size em value, relative ’s parent effectively equivalent using relative(). variant em values called rem() (root em). Instead making setting relative size current element makes relative size base element document.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_style.html","id":"side-values","dir":"Articles","previous_headings":"A slightly less cascading style specification","what":"Side values","title":"Marquee Styling","text":"style three settings relates four sides box. margin, padding, border_size. set values constructed trbl(), works like margin settings CSS. provide 1 value set sides value. provide two values set top bottom first left right second. provide three values set top first, left right second, bottom third. provide four values set top first, right second, bottom third, left fourth (bold first letters gives clue constructor named ).","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"markdown-vs-commonmark","dir":"Articles","previous_headings":"","what":"Markdown vs CommonMark","title":"Marquee Syntax","text":"used two different names discuss syntax marquee adheres . Markdown original specification developed John Gruber Aaron Swartz 2004. spec intentionally vague ambiguous led divergence different parsers handled edge cases. CommonMark developed tackle bringing forth stringent internally consistent syntax parsers develop . top CommonMark, various entities build flavour extended syntax, well-known perhaps GitHub flavoured markdown (GFM). Marquee CommonMark compliant, meaning adheres specific syntax interpretation CommonMark defined. , like GFM, marquee provides ’s additions syntax, overlapping flavours, uniquely ’s . following use name “Markdown” refer CommonMark syntax.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"standard-markdown-syntax","dir":"Articles","previous_headings":"","what":"Standard Markdown syntax","title":"Marquee Syntax","text":"Markdown can thought way naturally mark text belonging various stylistic contextual elements. favors ease reading writing ’s raw representation flexibility, cover almost standard needs text formatting (document written markdown). elements can marked broadly falls two buckets: Block elements span elements.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"block-elements","dir":"Articles","previous_headings":"Standard Markdown syntax","what":"Block elements","title":"Marquee Syntax","text":"block element element contains completed content, sense two following blocks contextually separated. block can contain blocks inside , raw text.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"paragraphs-p","dir":"Articles","previous_headings":"Standard Markdown syntax > Block elements","what":"Paragraphs (p)","title":"Marquee Syntax","text":"basic block element paragraph. paragraph run text another block element. Paragraphs separated two consecutive line breaks. can use single line breaks paragraph wrap text raw format. linebreaks ignored parsing. means text: semantically similar want force linebreak inside paragraph, end line two spaces linebreak. aware code editors strips trailing spaces saving document.","code":"this is the first paragraph this is a second one here we add linebreaks because we want the raw text to have a certain width here we add linebreaks because we want the raw text to have a certain width"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"headers-h1-h6","dir":"Articles","previous_headings":"Standard Markdown syntax > Block elements","what":"Headers (h1-h6)","title":"Marquee Syntax","text":"Markdown supports six levels headers. can defined one two ways: last style supports level 1 2, visually pronounced raw encoding.","code":"# Header 1 ## Header 2 ### Header 3 #### Header 4 ##### Header 5 ###### Header 6 Header 1 ======== Header 2 --------"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"block-quotes-bq","dir":"Articles","previous_headings":"Standard Markdown syntax > Block elements","what":"Block quotes (bq)","title":"Marquee Syntax","text":"block quote semantically paragraph wish highlight way. can contain blocks inside part block. created using email-style quoting","code":"> This is a block quote > > It contains two paragraphs"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"code-blocks-cb","dir":"Articles","previous_headings":"Standard Markdown syntax > Block elements","what":"Code blocks (cb)","title":"Marquee Syntax","text":"code block intended hold unparsed text (often code). markdown inside codeblock ignored shown -. means code block contain child blocks way specify . Code blocks created either indenting everything 4 spaces, enclosing text ```, e.g. ","code":"This is a paragraph This is a code block # This will not be converted to a header new paragraph This is a paragraph ``` This is a code block # This will not be converted to a header ``` new paragraph"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"lists-ul-ol-and-li","dir":"Articles","previous_headings":"Standard Markdown syntax > Block elements","what":"Lists (ul, ol, and li)","title":"Marquee Syntax","text":"Lists markdown comes two flavors: Unordered ordered. Ordered lists can created using either *, -, + bullet, ordered using number followed either . ). styles semantically equivalent taste choose. Depending whether empty line consecutive elements list might considered tight defines styled parser List items can child blocks, either multiple paragraph block elements Ordered lists care number first item. remaining item numbers inspected. means list semantically equivalent first number, however instructs renderer start numbering ","code":"* This is an unordered list * It has a second bullet point 1. This is an ordered list 2. next item # Tight - This is - a tight - list # Untight - This is - so untight - I can't even * First list item * Second one This contains a second paragraph. It must be indented > We could even add a block quote * Third item contains a sub list 1. let's make it ordered 2. and tight 1. item one 2. item two 3. item three 1. item one 9. item two 4. item three 5. This list starts counting from 5 6. and so on 1. This will be item 7 despite what we wrote"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"horizontal-rulers-hr","dir":"Articles","previous_headings":"Standard Markdown syntax > Block elements","what":"Horizontal rulers (hr)","title":"Marquee Syntax","text":"Last block items horizontal rulers. demarcate break two blocks can created using three asterisks (*) hyphens (-), optionally spacing , line, e.g. ","code":"* * * -------------------------"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"span-elements","dir":"Articles","previous_headings":"Standard Markdown syntax","what":"Span elements","title":"Marquee Syntax","text":"Span elements elements break flow text considered “inline”. classic example marking text emphasized (often rendered italicized). wouldn’t expect element break new line, rather keep flow.","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"emphasize-em","dir":"Articles","previous_headings":"Standard Markdown syntax > Span elements","what":"Emphasize (em)","title":"Marquee Syntax","text":"add emphasis text, wrap single asterisk (*) either side. Classic markdown also allows use underscore (_), many flavors (marquee included), repurposed thus doesn’t work. emphasis often styled italic, given emphasis considered semantic rather stylistic.","code":"Within this line of text we add *emphasis* on one word"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"strong-str","dir":"Articles","previous_headings":"Standard Markdown syntax > Span elements","what":"Strong (str)","title":"Marquee Syntax","text":"give part text weight can wrap two asterisks either side. Like emphasis , semantic, often equates rendering text bold","code":"I'm making a **strong** point here"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"link-a","dir":"Articles","previous_headings":"Standard Markdown syntax > Span elements","what":"Link (a)","title":"Marquee Syntax","text":"links rather useless marquee intended raster rendering, syntax supported often result slightly different (though unclickable) rendering style. Links created using following syntax Links can also created enclosing URL <>, e.g. case url used text well","code":"[link text](link-url) "},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"code-code","dir":"Articles","previous_headings":"Standard Markdown syntax > Span elements","what":"Code (code)","title":"Marquee Syntax","text":"Inline code, like code blocks render content -. code span created enclosing text single back-tick (`)","code":"This text has some fancy code in it `six <- 1 + 5`, right?"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"images-img","dir":"Articles","previous_headings":"Standard Markdown syntax > Span elements","what":"Images (img)","title":"Marquee Syntax","text":"Images included text using link-like syntax, prepended exclamation mark: title/alt-text ignored marquee reasons links useless, can used make raw text easy understand. standard markdown expect image path point file system, marquee can also name graphic object environment. example, created plot ggplot2 saved p variable, can insert markdown document simply adding images semantically span elements, marquee treat images resides line (surrounded empty lines) block element.","code":"![Image title](image-path) ![](p)"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"markdown-extensions","dir":"Articles","previous_headings":"","what":"Markdown extensions","title":"Marquee Syntax","text":"Apart base syntax described , marquee allows additional features:","code":""},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"underline-u","dir":"Articles","previous_headings":"Markdown extensions","what":"Underline (u)","title":"Marquee Syntax","text":"can underline run text enclosing underscore. Note feature means classic use underscore alias asterisk emphasizing text longer works. Note emphasis semantic, underline much stylistic mark","code":"We will _underline_ a word"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"strikethrough-del","dir":"Articles","previous_headings":"Markdown extensions","what":"Strikethrough (del)","title":"Marquee Syntax","text":"want give appearance something deleted, can enclose tilde (~)","code":"I'm sure this is ~good~ better"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"custom-spans","dir":"Articles","previous_headings":"Markdown extensions","what":"Custom spans","title":"Marquee Syntax","text":"Marquee ’s style custom span elements, need style text run special way. created enclosing text {.name }, give enclosed text name style (render). aware preceding dot removed span element name. Alternatively can use {#name }, give enclosed text #name style (note hash stripped span element name).","code":"Sometimes my text is so {.stylish eloquent} that the basic markdown elements are not enough"},{"path":[]},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"escaping-syntax","dir":"Articles","previous_headings":"Miscellaneous","what":"Escaping syntax","title":"Marquee Syntax","text":"can see , small set characters holds special meaning markdown (even holds multiple meanings). : \\, `, *, _, ~, {, }, [, ], (, ), #, +, -, ., !. Using run risk text interpreted ways intent. wish include one characters -, can escape using \\, instruct parser ignore formatting may deduced character.","code":"I just like \\*asterisks\\* around words"},{"path":"https://marquee.r-lib.org/dev/articles/marquee_syntax.html","id":"where-is-my-html-support","dir":"Articles","previous_headings":"Miscellaneous","what":"Where is my HTML-support?","title":"Marquee Syntax","text":"seassoned markdown user may accustomed mixing HTML code markdown text need technical formatting. works markdown passes code unaltered end result HTML, included HTML part final HTML document. However, HTML part markdown, marquee simply pass . Since parsed text rendered HTML means HTML code include visible ’s raw format.","code":""},{"path":"https://marquee.r-lib.org/dev/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Thomas Lin Pedersen. Author, maintainer. Martin Mitáš. Author. Author MD4C . Copyright holder, funder.","code":""},{"path":"https://marquee.r-lib.org/dev/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Pedersen T, Mitáš M (2025). marquee: Markdown Parser Renderer R Graphics. R package version 0.1.0.9000, https://github.com/r-lib/marquee, https://marquee.r-lib.org.","code":"@Manual{, title = {marquee: Markdown Parser and Renderer for R Graphics}, author = {Thomas Lin Pedersen and Martin Mitáš}, year = {2025}, note = {R package version 0.1.0.9000, https://github.com/r-lib/marquee}, url = {https://marquee.r-lib.org}, }"},{"path":"https://marquee.r-lib.org/dev/index.html","id":"marquee-","dir":"","previous_headings":"","what":"Markdown Parser and Renderer for R Graphics","title":"Markdown Parser and Renderer for R Graphics","text":"marquee markdown parser renderer R graphics engine. can used render rich text formatted markdown (CommonMark) inside R graphics ggplot2 graphics built grid.","code":""},{"path":"https://marquee.r-lib.org/dev/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Markdown Parser and Renderer for R Graphics","text":"","code":"# You can install marquee from CRAN install.packages(\"marquee\") # Or get the development version from Github using pak pak::pak(\"r-lib/marquee\")"},{"path":"https://marquee.r-lib.org/dev/index.html","id":"examples","dir":"","previous_headings":"","what":"Examples","title":"Markdown Parser and Renderer for R Graphics","text":"main function package marquee_grob() creates grob based markdown text style can rendered grid: (image – go ahead check)","code":"# Let's render this readme readme <- paste(readLines(\"README.Rmd\")[-seq_len(17)], collapse = \"\\n\") library(marquee) library(grid) fancy_style <- classic_style( body_font = \"baskerville\", header_font = \"marker felt\", code_font = \"fira code\" ) |> modify_style(\"cb\", background = linearGradient( colours = c(\"lightblue\", \"white\"), x1 = 0, y1 = 1, x2 = 0, y2 = 0 )) grob <- marquee_grob(readme, style = fancy_style) grid.draw(grob)"},{"path":"https://marquee.r-lib.org/dev/index.html","id":"prior-art","dir":"","previous_headings":"","what":"Prior art","title":"Markdown Parser and Renderer for R Graphics","text":"remiss mention gridtext ggtext, Claus Wilke. packages aim solve much problem marquee, work different way don’t powerful textshaping backend marquee. notably user perspective perhaps gridtext understands HTML degree, whereas marquee oblivious HTML CSS. Instead, supports full CommonMark spec plan add support custom span elements well.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/GeomMarquee.html","id":null,"dir":"Reference","previous_headings":"","what":"Geom class for geom_marquee — GeomMarquee","title":"Geom class for geom_marquee — GeomMarquee","text":"underlying Geom class powers geom_marquee() layers.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/GeomMarquee.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Geom class for geom_marquee — GeomMarquee","text":"","code":"GeomMarquee"},{"path":"https://marquee.r-lib.org/dev/reference/GuideMarquee.html","id":null,"dir":"Reference","previous_headings":"","what":"Guide class for guide_marquee — GuideMarquee","title":"Guide class for guide_marquee — GuideMarquee","text":"sthe underlying Guide class powers guide_marquee legends.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/GuideMarquee.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Guide class for guide_marquee — GuideMarquee","text":"","code":"GuideMarquee"},{"path":"https://marquee.r-lib.org/dev/reference/classic_style.html","id":null,"dir":"Reference","previous_headings":"","what":"Classic styling for markdown — classic_style","title":"Classic styling for markdown — classic_style","text":"function facilitates construction complete style set based classic look HTML rendered markdown document. contains style specifications supported markdown elements well sub sup style can used subscripts superscript respectively. accessible custom spans (e.g. H{.sub 2}O) markdown provide syntax formats.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/classic_style.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Classic styling for markdown — classic_style","text":"","code":"classic_style( base_size = 12, body_font = \"\", header_font = \"\", code_font = \"mono\", ..., ltr = TRUE )"},{"path":"https://marquee.r-lib.org/dev/reference/classic_style.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Classic styling for markdown — classic_style","text":"base_size base font size text. sizing based body_font font family use body text header_font font family use headers code_font font family use code code block text ... Arguments passed base_style weight font weight use. Can either number (0, 100, 200, 300, 400, 500, 600, 700, 800, 900) strings (\"undefined\", \"thin\", \"ultralight\", \"light\", \"normal\", \"medium\", \"semibold\", \"bold\", \"ultrabold\", \"heavy\") italic font slanted width font width use. Can either number (“0, 1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`) strings (`\"undefined\"`, `\"ultracondensed\"`, `\"extracondensed\"`, `\"condensed\"`, `\"semicondensed\"`, `\"normal\"`, `\"semiexpanded\"`, `\"expanded\"`, `\"extraexpanded\"`, `\"ultraexpanded\"`) features font_feature object specifying OpenType font features apply font color color font lineheight spacing subsequent lines relative font size. Can relative() case based parent lineheight. align alignment within text. One \"left\", \"center\", \"right\", \"justified-left\", \"justified-center\", \"justified-right\", \"distributed\" tracking Additional character spacing measured 1/1000em. Can relative() case based parent tracking. indent indentation first line paragraph measured points. Can relative() case based parent indent, em() case based font size style, rem() case based font size body element. hanging indentation first line paragraph measured points. Can relative() case based parent hanging, em() case based font size style, rem() case based font size body element. margin margin around element, given call trbl(). Margin refers area outside box text placed . element background, margin area colored. padding padding around element, given call trbl(). Padding refers distance text border box drawn . element background, padding area colored. background color background fill. background includes padding margin. Can solid color gradient pattern made grid::linearGradient()/grid::radialGradient()/grid::pattern() border color background stroke. background includes padding margin border_size line width background stroke, given call trbl() border_radius corner radius background, given points bullets vector strings use bullets unordered lists. marquee_bullets provides selection underline text underlined strikethrough text strikethrough baseline baseline shift apply text img_asp default aspect ratio block level images provided image text_direction directional flow text. Either \"auto\" let determined content text, \"ltr\"/\"rtl\" hard-code either left--right right--left. setting change order glyphs within span text, rather whether consequtive blocks text laid left--right right--left. also affects side indentation applied well meaning \"auto\", \"justified-auto\" aligment. ltr style intended left--right text? affects list indentation citation border","code":""},{"path":"https://marquee.r-lib.org/dev/reference/classic_style.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Classic styling for markdown — classic_style","text":"style set object","code":""},{"path":"https://marquee.r-lib.org/dev/reference/classic_style.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Classic styling for markdown — classic_style","text":"","code":"classic_style(16, \"serif\", \"sans\") #> #> [1] "},{"path":"https://marquee.r-lib.org/dev/reference/element_marquee.html","id":null,"dir":"Reference","previous_headings":"","what":"ggplot2 theme element supporting marquee syntax — element_marquee","title":"ggplot2 theme element supporting marquee syntax — element_marquee","text":"theme element drop-replacement ggplot2::element_text(). works integrating various style settings element base style provided style set. margin given, set body tag skip_inherit(). default width NA meaning span long given text , line wrapping. can set unit make fit within specific width. However, may work expected rotated text (may get lucky). Note may see small shifts visuals going element_text() element_marquee() size reporting may differ two elements.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/element_marquee.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"ggplot2 theme element supporting marquee syntax — element_marquee","text":"","code":"element_marquee( family = NULL, colour = NULL, size = NULL, hjust = NULL, vjust = NULL, angle = NULL, lineheight = NULL, color = NULL, margin = NULL, style = NULL, width = NULL, inherit.blank = FALSE )"},{"path":"https://marquee.r-lib.org/dev/reference/element_marquee.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"ggplot2 theme element supporting marquee syntax — element_marquee","text":"family font family base style colour, color font colour base style size font size base style hjust Horizontal justification (\\([0, 1]\\)) vjust Vertical justification (\\([0, 1]\\)) angle Angle (\\([0, 360]\\)) lineheight lineheight base style margin margin body tag. margins element_text() rotate along angle follow behavior well right margin becomes bottom margin rotating text 90 degrees forth. style style set base rendering width maximum width text. See description caveats inherit.blank element inherit existence element_blank among parents? TRUE existence blank element among parents cause element blank well. FALSE blank parent element ignored calculating final element state.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/element_marquee.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"ggplot2 theme element supporting marquee syntax — element_marquee","text":"element_marquee object can used place element_text ggplot2 theme specifications","code":""},{"path":"https://marquee.r-lib.org/dev/reference/element_marquee.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"ggplot2 theme element supporting marquee syntax — element_marquee","text":"","code":"library(ggplot2) p <- ggplot(mtcars) + geom_point(aes(mpg, disp)) + labs(title = \"A {.red *marquee*} title\\n* Look at this bullet list\\n\\n* great, huh?\") + theme_gray(base_size = 6) + theme(title = element_marquee()) plot(p) ggplot(mtcars) + geom_histogram(aes(x = mpg)) + labs(title = \"I put a plot in your title so you can plot while you title ![](p) What more could you _possibly_ want?\") + theme(title = element_marquee()) #> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`. #> Warning: Group definition failed"},{"path":"https://marquee.r-lib.org/dev/reference/geom_marquee.html","id":null,"dir":"Reference","previous_headings":"","what":"Draw text formatted with marquee — geom_marquee","title":"Draw text formatted with marquee — geom_marquee","text":"geom extension geom_text() geom_label() allows draw richly formatted text marquee-markdown format plot. plain text near-drop-replacement geoms except sizing might slightly different. However, using geom able access much powerful font settings available marquee, even might make sense opt geom.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/geom_marquee.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Draw text formatted with marquee — geom_marquee","text":"","code":"geom_marquee( mapping = NULL, data = NULL, stat = \"identity\", position = \"identity\", ..., size.unit = \"mm\", na.rm = FALSE, show.legend = NA, inherit.aes = TRUE )"},{"path":"https://marquee.r-lib.org/dev/reference/geom_marquee.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Draw text formatted with marquee — geom_marquee","text":"mapping Set aesthetic mappings created aes(). specified inherit.aes = TRUE (default), combined default mapping top level plot. must supply mapping plot mapping. data data displayed layer. three options: NULL, default, data inherited plot data specified call ggplot(). data.frame, object, override plot data. objects fortified produce data frame. See fortify() variables created. function called single argument, plot data. return value must data.frame, used layer data. function can created formula (e.g. ~ head(.x, 10)). stat statistical transformation use data layer. using geom_*() function construct layer, stat argument can used override default coupling geoms stats. stat argument accepts following: Stat ggproto subclass, example StatCount. string naming stat. give stat string, strip function name stat_ prefix. example, use stat_count(), give stat \"count\". information ways specify stat, see layer stat documentation. position position adjustment use data layer. jointy specified nudge_x nudge_y. can used various ways, including prevent overplotting improving display. position argument accepts following: result calling position function, position_jitter(). string nameing position adjustment. give position string, strip function name position_ prefix. example, use position_jitter(), give position \"jitter\". information ways specify position, see layer position documentation. ... arguments passed layer()'s params argument. arguments broadly fall one 4 categories . Notably, arguments position argument, aesthetics required can passed .... Unknown arguments part 4 categories ignored. Static aesthetics mapped scale, fixed value apply layer whole. example, colour = \"red\" linewidth = 3. geom's documentation Aesthetics section lists available options. 'required' aesthetics passed params. Please note passing unmapped aesthetics vectors technically possible, order required length guaranteed parallel input data. constructing layer using stat_*() function, ... argument can used pass parameters geom part layer. example stat_density(geom = \"area\", outline.type = \"\"). geom's documentation lists parameters can accept. Inversely, constructing layer using geom_*() function, ... argument can used pass parameters stat part layer. example geom_area(stat = \"density\", adjust = 0.5). stat's documentation lists parameters can accept. key_glyph argument layer() may also passed .... can one functions described key glyphs, change display layer legend. size.unit size aesthetic interpreted: millimetres (\"mm\", default), points (\"pt\"), centimetres (\"cm\"), inches (\"\"), picas (\"pc\"). na.rm FALSE, default, missing values removed warning. TRUE, missing values silently removed. show.legend logical. layer included legends? NA, default, includes aesthetics mapped. FALSE never includes, TRUE always includes. can also named logical vector finely select aesthetics display. inherit.aes FALSE, overrides default aesthetics, rather combining . useful helper functions define data aesthetics inherit behaviour default plot specification, e.g. borders().","code":""},{"path":"https://marquee.r-lib.org/dev/reference/geom_marquee.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Draw text formatted with marquee — geom_marquee","text":"ggplot2 layer can added plot","code":""},{"path":"https://marquee.r-lib.org/dev/reference/geom_marquee.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Draw text formatted with marquee — geom_marquee","text":"Styling text based style set exception standard aesthetics family, size, colour, fill, etc. recognized applied base tag style. default style set (classic_style) can changed using style aesthetic can take vector style sets text can rely style needed. element_marquee(), fill aesthetic treated differently applied base tag, body tag skip_inherit() style propagate fill. Contrary standard text label geoms, geom_marquee() takes width aesthetic can used turn soft wrapping text. default value (NA) lets text run long want's (honoring hard breaks), setting something else instruct marquee use amount space. can use grid units set absolute amount.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/geom_marquee.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Draw text formatted with marquee — geom_marquee","text":"","code":"library(ggplot2) # Standard use p <- ggplot(mtcars, aes(wt, mpg)) p + geom_marquee(aes(label = rownames(mtcars))) # Make use of more powerful font features (note, result may depend on fonts # installed on the system) p + geom_marquee( aes(label = rownames(mtcars)), style = classic_style(weight = \"thin\", width = \"condensed\") ) # Turn on line wrapping p + geom_marquee(aes(label = rownames(mtcars)), width = unit(2, \"cm\")) # Style like label label_style <- modify_style( classic_style(), \"body\", padding = skip_inherit(trbl(4)), border = \"black\", border_size = skip_inherit(trbl(1)), border_radius = 3 ) p + geom_marquee(aes(label = rownames(mtcars), fill = gear), style = label_style) #> Warning: Group definition failed # Use markdown to style the text red_bold_names <- sub(\"(\\\\w+)\", \"{.red **\\\\1**}\", rownames(mtcars)) p + geom_marquee(aes(label = red_bold_names))"},{"path":"https://marquee.r-lib.org/dev/reference/guide_marquee.html","id":null,"dir":"Reference","previous_headings":"","what":"Marquee subtitle guide — guide_marquee","title":"Marquee subtitle guide — guide_marquee","text":"legend appears similar subtitle uses marquee syntax typeset text interpolate legend glyphs.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/guide_marquee.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Marquee subtitle guide — guide_marquee","text":"","code":"guide_marquee( title = ggplot2::waiver(), style = marquee::style(background = NA), detect = FALSE, theme = NULL, position = \"top\", override.aes = list(), order = 1 )"},{"path":"https://marquee.r-lib.org/dev/reference/guide_marquee.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Marquee subtitle guide — guide_marquee","text":"title single character string indicating text display. NULL title shown. waiver() (default), name scale name specified labs() used tyle. style Either style_set override style sets inherited theme, style styling labels specifically. colour fill scales, color, background border style properties overridden set NULL, see examples. detect Either FALSE typeset entirely syntax TRUE automatically detect labels apply. theme theme object style guide individually differently plot's theme settings. theme argument guide overrides, combined , plot's theme. position character string indicating legend placed relative plot panels. override.aes list specifying aesthetic parameters legend keys. See details examples ?guide_legend. order positive integer less 99 specifies order guide among multiple guides. controls order multiple guides displayed, contents guide . 0 (default), order determined secret algorithm.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/guide_marquee.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Marquee subtitle guide — guide_marquee","text":"GuideMarquee object can passed guides() function used guide argument scale.","code":""},{"path":"https://marquee.r-lib.org/dev/reference/guide_marquee.html","id":"text-formatting","dir":"Reference","previous_headings":"","what":"Text formatting","title":"Marquee subtitle guide — guide_marquee","text":"addition standard marquee syntax, additional syntax make building guide easier. text , n marks n-th break scale, label represents scale's labels foo represents arbitrary text. <> <