| Title: | Standardizing Outputs in the 'Core Surveillance' Style |
|---|---|
| Description: | A comprehensive styling system for consistent visual outputs using 'Core Surveillance' guidelines. Provides 'ggplot2' themes, color palettes, and dual formatting functions to standardize graphs, tables, and reports. Includes Norwegian formatting conventions for domestic use and international journal standards for academic publications. Features number formatting (percentages, per-100k rates, log transformations), date formatting (Norwegian vs ISO 8601), and a hierarchical color system. Focuses on consistency over flexibility to ensure reproducible, professional outputs across research contexts. |
| Authors: | Richard Aubrey White [aut, cre] (ORCID: <https://orcid.org/0000-0002-6747-1726>), Celine Victoria Berg-Hansen [aut] (ORCID: <https://orcid.org/0000-0002-0033-2019>), Chi Zhang [aut] |
| Maintainer: | Richard Aubrey White <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 2026.7.1 |
| Built: | 2026-07-02 10:21:17 UTC |
| Source: | https://github.com/niphr/csstyle |
Reads the lines of a file on GitHub and returns them as a
github_code object. A "blob" URL is rewritten to the corresponding
raw URL before the file is read. The object can be printed with line
numbers and an optional link back to GitHub (see
print.github_code).
as_github_code(url)as_github_code(url)
url |
Character string. A GitHub URL to a file, either a "blob" URL
(e.g. |
Create a github_code object from a GitHub URL
An object of class github_code: a character vector of the
file's lines with a pretty_url attribute.
## Not run: # Requires an internet connection x <- as_github_code("https://github.com/niphr/csstyle/blob/main/README.md") print(x, lines = 1:3) ## End(Not run)## Not run: # Requires an internet connection x <- as_github_code("https://github.com/niphr/csstyle/blob/main/README.md") print(x, lines = 1:3) ## End(Not run)
A list holding the named colors, the base color, and the predefined color palettes used by the Core Surveillance styling functions.
colorscolors
A list with the following elements:
Named character vector of hex codes "H1" to "H12".
The base color (element "H1" of named_colors).
Named list of palettes. The primary palettes have
1 to 12 levels (primary_1 to primary_12); warning_3
has 3 levels; posneg_1 and posneg_2 have 1 and 2 levels.
Character vector of the palette family names ("primary", "posneg", "warning").
A list. See the Format section for the elements.
Other csstyle_utilities:
display_all_palettes(),
every_nth(),
set_global()
# Access named colors colors$named_colors["H1"] # View primary palette colors$palettes$primary_3 # See all available palettes names(colors$palettes)# Access named colors colors$named_colors["H1"] # View primary palette colors$palettes$primary_3 # See all available palettes names(colors$palettes)
Creates a visualization showing all available Core Surveillance color palettes with their color codes and names.
display_all_palettes()display_all_palettes()
A ggplot2 plot displaying all color palettes
Other csstyle_utilities:
colors,
every_nth(),
set_global()
# Display all available color palettes display_all_palettes()# Display all available color palettes display_all_palettes()
Creates a function that returns every nth element from a vector, useful for axis breaks in ggplot2.
every_nth(n)every_nth(n)
n |
Integer specifying which nth value to return (e.g., n=2 returns every 2nd value) |
A function that returns every nth discrete value.
Other csstyle_utilities:
colors,
display_all_palettes(),
set_global()
every_nth(4)(c(1:10)) ## Not run: scale_x_discrete(NULL, breaks = every_nth(n = 2)) ## End(Not run)every_nth(4)(c(1:10)) ## Not run: scale_x_discrete(NULL, breaks = every_nth(n = 2)) ## End(Not run)
Converts age codes (e.g., "009", "005_014") to readable Norwegian age labels with proper formatting.
Converts age codes to readable Norwegian age labels and returns as character vector.
format_cstidy_age_as_factor(x) format_cstidy_age_as_character(x)format_cstidy_age_as_factor(x) format_cstidy_age_as_character(x)
x |
Character vector containing age codes or age group codes |
Factor vector with Norwegian age labels (e.g., "9 år", "5-14 år")
Character vector with Norwegian age labels (e.g., "9 år", "5-14 år")
csstyle::format_cstidy_age_as_factor("009") csstyle::format_cstidy_age_as_factor("005-014") csstyle::format_cstidy_age_as_character("009") csstyle::format_cstidy_age_as_character("005-014")csstyle::format_cstidy_age_as_factor("009") csstyle::format_cstidy_age_as_factor("005-014") csstyle::format_cstidy_age_as_character("009") csstyle::format_cstidy_age_as_character("005-014")
Functions for formatting dates and datetimes using ISO 8601 journal conventions.
format_date_as_journal(x = lubridate::today(), format = "%Y-%m-%d") format_datetime_as_journal( x = lubridate::now(), format = "%Y-%m-%d %H:%M:%S" ) format_datetime_as_journal_file( x = lubridate::now(), format = "%Y_%m_%d_%H%M%S" )format_date_as_journal(x = lubridate::today(), format = "%Y-%m-%d") format_datetime_as_journal( x = lubridate::now(), format = "%Y-%m-%d %H:%M:%S" ) format_datetime_as_journal_file( x = lubridate::now(), format = "%Y_%m_%d_%H%M%S" )
x |
Date or datetime object to format |
format |
Character string specifying the desired format |
Character vector with journal-formatted dates/datetimes
# Format current date/time using journal conventions (ISO 8601) format_date_as_journal() format_datetime_as_journal() # Format specific dates format_date_as_journal(as.Date("2023-12-25")) format_datetime_as_journal_file(as.POSIXct("2023-12-25 14:30:00"))# Format current date/time using journal conventions (ISO 8601) format_date_as_journal() format_datetime_as_journal() # Format specific dates format_date_as_journal(as.Date("2023-12-25")) format_datetime_as_journal_file(as.POSIXct("2023-12-25 14:30:00"))
Functions for formatting dates and datetimes using Norwegian conventions or for safe filename use.
format_date_as_nor(x = lubridate::today(), format = "%d.%m.%Y") format_datetime_as_nor( x = lubridate::now(), format = "%d.%m.%Y kl. %H:%S" ) format_datetime_as_file(x = lubridate::now(), format = "%Y_%m_%d_%H%M%S")format_date_as_nor(x = lubridate::today(), format = "%d.%m.%Y") format_datetime_as_nor( x = lubridate::now(), format = "%d.%m.%Y kl. %H:%S" ) format_datetime_as_file(x = lubridate::now(), format = "%Y_%m_%d_%H%M%S")
x |
Date or datetime object to format |
format |
Character string specifying the desired format |
Character vector with formatted dates/datetimes
# Format current date/time using Norwegian conventions format_date_as_nor() format_datetime_as_nor() # Format specific dates format_date_as_nor(as.Date("2023-12-25")) format_datetime_as_file(as.POSIXct("2023-12-25 14:30:00"))# Format current date/time using Norwegian conventions format_date_as_nor() format_datetime_as_nor() # Format specific dates format_date_as_nor(as.Date("2023-12-25")) format_datetime_as_file(as.POSIXct("2023-12-25 14:30:00"))
Converts Norwegian location codes (municipality/county codes) to factors with human-readable Norwegian location names.
Converts Norwegian location codes to character vector with human-readable Norwegian location names.
format_location_code_as_factor( x, label = NULL, label_if_not_unique = NULL, reference = csdata::nor_locations_names(), direction = 1 ) format_location_code_as_character( x, label = NULL, label_if_not_unique = NULL, reference = csdata::nor_locations_names(), direction = 1 )format_location_code_as_factor( x, label = NULL, label_if_not_unique = NULL, reference = csdata::nor_locations_names(), direction = 1 ) format_location_code_as_character( x, label = NULL, label_if_not_unique = NULL, reference = csdata::nor_locations_names(), direction = 1 )
x |
Character vector of Norwegian location codes |
label |
Column name from reference data to use for labels (default: uses global setting) |
label_if_not_unique |
Column name to use when location names are not unique (default: uses global setting) |
reference |
Data.table with location reference data (default: csdata::nor_locations_names()) |
direction |
Integer: 1 for normal order, -1 for reversed order (default: 1) |
Factor vector with Norwegian location names as labels
Character vector with Norwegian location names
# Convert location codes to factors (requires csdata package) location_codes <- c("03", "11", "15") format_location_code_as_factor(location_codes) format_location_code_as_character(location_codes)# Convert location codes to factors (requires csdata package) location_codes <- c("03", "11", "15") format_location_code_as_factor(location_codes) format_location_code_as_character(location_codes)
Formats values by applying 10^x transformation then formatting with journal conventions and 1 decimal place.
Formats values by applying 10^x transformation then formatting with journal conventions and 2 decimal places.
format_num_as_journal_invlog10_1(x) format_num_as_journal_invlog10_2(x)format_num_as_journal_invlog10_1(x) format_num_as_journal_invlog10_2(x)
x |
Numeric vector (log-10 scale values) |
Character vector with journal-formatted numbers
Character vector with journal-formatted numbers
Other csstyle_journal_formatters:
format_num_as_journal_invlog2_1(),
format_num_as_journal_invloge_1(),
format_num_as_journal_num_0(),
format_num_as_journal_per100k_0(),
format_num_as_journal_perc_0()
# Transform log10 values back to original scale format_num_as_journal_invlog10_1(c(1, 2, 3)) # 10^1, 10^2, 10^3 format_num_as_journal_invlog10_2(c(1, 2, 3))# Transform log10 values back to original scale format_num_as_journal_invlog10_1(c(1, 2, 3)) # 10^1, 10^2, 10^3 format_num_as_journal_invlog10_2(c(1, 2, 3))
Formats values by applying 2^x transformation then formatting with journal conventions and 1 decimal place.
Formats values by applying 2^x transformation then formatting with journal conventions and 2 decimal places.
format_num_as_journal_invlog2_1(x) format_num_as_journal_invlog2_2(x)format_num_as_journal_invlog2_1(x) format_num_as_journal_invlog2_2(x)
x |
Numeric vector (log-2 scale values) |
Character vector with journal-formatted numbers
Character vector with journal-formatted numbers
Other csstyle_journal_formatters:
format_num_as_journal_invlog10_1(),
format_num_as_journal_invloge_1(),
format_num_as_journal_num_0(),
format_num_as_journal_per100k_0(),
format_num_as_journal_perc_0()
# Transform log2 values back to original scale format_num_as_journal_invlog2_1(c(1, 2, 3)) # 2^1, 2^2, 2^3 format_num_as_journal_invlog2_2(c(1, 2, 3))# Transform log2 values back to original scale format_num_as_journal_invlog2_1(c(1, 2, 3)) # 2^1, 2^2, 2^3 format_num_as_journal_invlog2_2(c(1, 2, 3))
Formats values by applying exp(x) transformation then formatting with journal conventions and 1 decimal place.
Formats values by applying exp(x) transformation then formatting with journal conventions and 2 decimal places.
format_num_as_journal_invloge_1(x) format_num_as_journal_invloge_2(x)format_num_as_journal_invloge_1(x) format_num_as_journal_invloge_2(x)
x |
Numeric vector (natural log scale values) |
Character vector with journal-formatted numbers
Character vector with journal-formatted numbers
Other csstyle_journal_formatters:
format_num_as_journal_invlog10_1(),
format_num_as_journal_invlog2_1(),
format_num_as_journal_num_0(),
format_num_as_journal_per100k_0(),
format_num_as_journal_perc_0()
# Transform natural log values back to original scale format_num_as_journal_invloge_1(c(0, 1, 2)) # exp(0), exp(1), exp(2) format_num_as_journal_invloge_2(c(0, 1, 2))# Transform natural log values back to original scale format_num_as_journal_invloge_1(c(0, 1, 2)) # exp(0), exp(1), exp(2) format_num_as_journal_invloge_2(c(0, 1, 2))
Formats numeric values using journal number conventions with 0 decimal places.
Formats numeric values using journal number conventions with 1 decimal place.
Formats numeric values using journal number conventions with 2 decimal places.
format_num_as_journal_num_0(x) format_num_as_journal_num_1(x) format_num_as_journal_num_2(x)format_num_as_journal_num_0(x) format_num_as_journal_num_1(x) format_num_as_journal_num_2(x)
x |
Numeric vector to format |
Character vector with journal-formatted numbers
Character vector with journal-formatted numbers
Character vector with journal-formatted numbers
Other csstyle_journal_formatters:
format_num_as_journal_invlog10_1(),
format_num_as_journal_invlog2_1(),
format_num_as_journal_invloge_1(),
format_num_as_journal_per100k_0(),
format_num_as_journal_perc_0()
# Journal number formatting format_num_as_journal_num_0(c(1234.56, 9876.54, NA)) format_num_as_journal_num_1(c(1234.56, 9876.54, NA)) format_num_as_journal_num_2(c(1234.56, 9876.54, NA))# Journal number formatting format_num_as_journal_num_0(c(1234.56, 9876.54, NA)) format_num_as_journal_num_1(c(1234.56, 9876.54, NA)) format_num_as_journal_num_2(c(1234.56, 9876.54, NA))
Formats numeric values as "per 100k" rates using journal number conventions with 0 decimal places.
Formats numeric values as "per 100k" rates using journal number conventions with 1 decimal place.
Formats numeric values as "per 100k" rates using journal number conventions with 2 decimal places.
format_num_as_journal_per100k_0(x) format_num_as_journal_per100k_1(x) format_num_as_journal_per100k_2(x)format_num_as_journal_per100k_0(x) format_num_as_journal_per100k_1(x) format_num_as_journal_per100k_2(x)
x |
Numeric vector to format |
Character vector with journal-formatted numbers and "/100k" suffix
Character vector with journal-formatted numbers and "/100k" suffix
Character vector with journal-formatted numbers and "/100k" suffix
Other csstyle_journal_formatters:
format_num_as_journal_invlog10_1(),
format_num_as_journal_invlog2_1(),
format_num_as_journal_invloge_1(),
format_num_as_journal_num_0(),
format_num_as_journal_perc_0()
# Format rates per 100k population format_num_as_journal_per100k_0(c(123.45, 678.90, NA)) format_num_as_journal_per100k_1(c(123.45, 678.90, NA)) format_num_as_journal_per100k_2(c(123.45, 678.90, NA))# Format rates per 100k population format_num_as_journal_per100k_0(c(123.45, 678.90, NA)) format_num_as_journal_per100k_1(c(123.45, 678.90, NA)) format_num_as_journal_per100k_2(c(123.45, 678.90, NA))
Formats numeric values as percentages using journal number conventions with 0 decimal places.
Formats numeric values as percentages using journal number conventions with 1 decimal place.
Formats numeric values as percentages using journal number conventions with 2 decimal places.
format_num_as_journal_perc_0(x) format_num_as_journal_perc_1(x) format_num_as_journal_perc_2(x)format_num_as_journal_perc_0(x) format_num_as_journal_perc_1(x) format_num_as_journal_perc_2(x)
x |
Numeric vector to format |
Character vector with journal-formatted numbers and "
Character vector with journal-formatted numbers and "
Character vector with journal-formatted numbers and "
Other csstyle_journal_formatters:
format_num_as_journal_invlog10_1(),
format_num_as_journal_invlog2_1(),
format_num_as_journal_invloge_1(),
format_num_as_journal_num_0(),
format_num_as_journal_per100k_0()
# Format percentages format_num_as_journal_perc_0(c(12.34, 56.78, NA)) format_num_as_journal_perc_1(c(12.34, 56.78, NA)) format_num_as_journal_perc_2(c(12.34, 56.78, NA))# Format percentages format_num_as_journal_perc_0(c(12.34, 56.78, NA)) format_num_as_journal_perc_1(c(12.34, 56.78, NA)) format_num_as_journal_perc_2(c(12.34, 56.78, NA))
Formats values by applying 10^x transformation then formatting with Norwegian conventions and 1 decimal place.
Formats values by applying 10^x transformation then formatting with Norwegian conventions and 2 decimal places.
format_num_as_nor_invlog10_1(x) format_num_as_nor_invlog10_2(x)format_num_as_nor_invlog10_1(x) format_num_as_nor_invlog10_2(x)
x |
Numeric vector (log-10 scale values) |
Character vector with Norwegian-formatted numbers
Character vector with Norwegian-formatted numbers
Other csstyle_formatters:
format_num_as_nor_invlog2_1(),
format_num_as_nor_invloge_1(),
format_num_as_nor_num_0(),
format_num_as_nor_per100k_0(),
format_num_as_nor_perc_0()
# Transform log10 values back to original scale format_num_as_nor_invlog10_1(c(1, 2, 3)) # 10^1, 10^2, 10^3 format_num_as_nor_invlog10_2(c(1, 2, 3))# Transform log10 values back to original scale format_num_as_nor_invlog10_1(c(1, 2, 3)) # 10^1, 10^2, 10^3 format_num_as_nor_invlog10_2(c(1, 2, 3))
Formats values by applying 2^x transformation then formatting with Norwegian conventions and 1 decimal place.
Formats values by applying 2^x transformation then formatting with Norwegian conventions and 2 decimal places.
format_num_as_nor_invlog2_1(x) format_num_as_nor_invlog2_2(x)format_num_as_nor_invlog2_1(x) format_num_as_nor_invlog2_2(x)
x |
Numeric vector (log-2 scale values) |
Character vector with Norwegian-formatted numbers
Character vector with Norwegian-formatted numbers
Other csstyle_formatters:
format_num_as_nor_invlog10_1(),
format_num_as_nor_invloge_1(),
format_num_as_nor_num_0(),
format_num_as_nor_per100k_0(),
format_num_as_nor_perc_0()
# Transform log2 values back to original scale format_num_as_nor_invlog2_1(c(1, 2, 3)) # 2^1, 2^2, 2^3 format_num_as_nor_invlog2_2(c(1, 2, 3))# Transform log2 values back to original scale format_num_as_nor_invlog2_1(c(1, 2, 3)) # 2^1, 2^2, 2^3 format_num_as_nor_invlog2_2(c(1, 2, 3))
Formats values by applying exp(x) transformation then formatting with Norwegian conventions and 1 decimal place.
Formats values by applying exp(x) transformation then formatting with Norwegian conventions and 2 decimal places.
format_num_as_nor_invloge_1(x) format_num_as_nor_invloge_2(x)format_num_as_nor_invloge_1(x) format_num_as_nor_invloge_2(x)
x |
Numeric vector (natural log scale values) |
Character vector with Norwegian-formatted numbers
Character vector with Norwegian-formatted numbers
Other csstyle_formatters:
format_num_as_nor_invlog10_1(),
format_num_as_nor_invlog2_1(),
format_num_as_nor_num_0(),
format_num_as_nor_per100k_0(),
format_num_as_nor_perc_0()
# Transform natural log values back to original scale format_num_as_nor_invloge_1(c(0, 1, 2)) # exp(0), exp(1), exp(2) format_num_as_nor_invloge_2(c(0, 1, 2))# Transform natural log values back to original scale format_num_as_nor_invloge_1(c(0, 1, 2)) # exp(0), exp(1), exp(2) format_num_as_nor_invloge_2(c(0, 1, 2))
Formats numeric values using Norwegian number conventions with 0 decimal places.
Formats numeric values using Norwegian number conventions with 1 decimal place.
Formats numeric values using Norwegian number conventions with 2 decimal places.
format_num_as_nor_num_0(x) format_num_as_nor_num_1(x) format_num_as_nor_num_2(x)format_num_as_nor_num_0(x) format_num_as_nor_num_1(x) format_num_as_nor_num_2(x)
x |
Numeric vector to format |
Character vector with Norwegian-formatted numbers
Character vector with Norwegian-formatted numbers
Character vector with Norwegian-formatted numbers
Other csstyle_formatters:
format_num_as_nor_invlog10_1(),
format_num_as_nor_invlog2_1(),
format_num_as_nor_invloge_1(),
format_num_as_nor_per100k_0(),
format_num_as_nor_perc_0()
# Basic number formatting format_num_as_nor_num_0(c(1234.56, 9876.54, NA)) format_num_as_nor_num_1(c(1234.56, 9876.54, NA)) format_num_as_nor_num_2(c(1234.56, 9876.54, NA))# Basic number formatting format_num_as_nor_num_0(c(1234.56, 9876.54, NA)) format_num_as_nor_num_1(c(1234.56, 9876.54, NA)) format_num_as_nor_num_2(c(1234.56, 9876.54, NA))
Formats numeric values as "per 100k" rates using Norwegian number conventions with 0 decimal places.
Formats numeric values as "per 100k" rates using Norwegian number conventions with 1 decimal place.
Formats numeric values as "per 100k" rates using Norwegian number conventions with 2 decimal places.
format_num_as_nor_per100k_0(x) format_num_as_nor_per100k_1(x) format_num_as_nor_per100k_2(x)format_num_as_nor_per100k_0(x) format_num_as_nor_per100k_1(x) format_num_as_nor_per100k_2(x)
x |
Numeric vector to format |
Character vector with Norwegian-formatted numbers and "/100k" suffix
Character vector with Norwegian-formatted numbers and "/100k" suffix
Character vector with Norwegian-formatted numbers and "/100k" suffix
Other csstyle_formatters:
format_num_as_nor_invlog10_1(),
format_num_as_nor_invlog2_1(),
format_num_as_nor_invloge_1(),
format_num_as_nor_num_0(),
format_num_as_nor_perc_0()
# Format rates per 100k population format_num_as_nor_per100k_0(c(123.45, 678.90, NA)) format_num_as_nor_per100k_1(c(123.45, 678.90, NA)) format_num_as_nor_per100k_2(c(123.45, 678.90, NA))# Format rates per 100k population format_num_as_nor_per100k_0(c(123.45, 678.90, NA)) format_num_as_nor_per100k_1(c(123.45, 678.90, NA)) format_num_as_nor_per100k_2(c(123.45, 678.90, NA))
Formats numeric values as percentages using Norwegian number conventions with 0 decimal places.
Formats numeric values as percentages using Norwegian number conventions with 1 decimal place.
Formats numeric values as percentages using Norwegian number conventions with 2 decimal places.
format_num_as_nor_perc_0(x) format_num_as_nor_perc_1(x) format_num_as_nor_perc_2(x)format_num_as_nor_perc_0(x) format_num_as_nor_perc_1(x) format_num_as_nor_perc_2(x)
x |
Numeric vector to format |
Character vector with Norwegian-formatted numbers and "
Character vector with Norwegian-formatted numbers and "
Character vector with Norwegian-formatted numbers and "
Other csstyle_formatters:
format_num_as_nor_invlog10_1(),
format_num_as_nor_invlog2_1(),
format_num_as_nor_invloge_1(),
format_num_as_nor_num_0(),
format_num_as_nor_per100k_0()
# Format percentages format_num_as_nor_perc_0(c(12.34, 56.78, NA)) format_num_as_nor_perc_1(c(12.34, 56.78, NA)) format_num_as_nor_perc_2(c(12.34, 56.78, NA))# Format percentages format_num_as_nor_perc_0(c(12.34, 56.78, NA)) format_num_as_nor_perc_1(c(12.34, 56.78, NA)) format_num_as_nor_perc_2(c(12.34, 56.78, NA))
Creates a function for generating pretty axis breaks with Norwegian number formatting.
pretty_breaks(n = 5, formatting_fn = csstyle::format_num_as_nor_num_0, ...)pretty_breaks(n = 5, formatting_fn = csstyle::format_num_as_nor_num_0, ...)
n |
Number of desired breaks (default: 5) |
formatting_fn |
Formatting function to apply to break labels (default: Norwegian number formatting) |
... |
Additional arguments passed to pretty() |
A function that can be used for breaks on graphing.
library(ggplot2) # Use pretty breaks with default formatting ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + scale_x_continuous(breaks = pretty_breaks(n = 4))library(ggplot2) # Use pretty breaks with default formatting ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + scale_x_continuous(breaks = pretty_breaks(n = 4))
Prints the lines of a github_code object with line
numbers. Use the lines argument to print a subset of lines, and
include_url or include_url_as_link to also print a link back
to the file on GitHub.
## S3 method for class 'github_code' print(x, ...)## S3 method for class 'github_code' print(x, ...)
x |
A |
... |
Further arguments controlling the output: |
Print a github_code object
The input x, invisibly.
## Not run: # Requires an internet connection x <- as_github_code("https://github.com/niphr/csstyle/blob/main/README.md") print(x, lines = 1:3, include_url = TRUE) ## End(Not run)## Not run: # Requires an internet connection x <- as_github_code("https://github.com/niphr/csstyle/blob/main/README.md") print(x, lines = 1:3, include_url = TRUE) ## End(Not run)
Saves a ggplot2 plot with A4 paper dimensions.
save_a4(q, filename, landscape = T, scaling_factor = 1)save_a4(q, filename, landscape = T, scaling_factor = 1)
q |
ggplot2 plot object to save |
filename |
Character string specifying the output filename (with extension) |
landscape |
Logical indicating if plot should use landscape orientation (default: TRUE) |
scaling_factor |
Numeric scaling factor for A4 dimensions (default: 1) |
PNG output is rendered with the 'ragg' AGG device ('ragg::agg_png'), which is markedly faster than the default 'grDevices' PNG device for busy, many-geom ggplots (and gives cleaner text). Non-PNG filenames fall back to ‘ggsave'’s extension-based device selection.
Nothing (called for side effects).
library(ggplot2) # Create a plot p <- ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + theme_cs() ## Not run: # Save in landscape A4 save_a4(p, "myplot.png") # Save in portrait A4 with larger scaling save_a4(p, "myplot_large.png", landscape = FALSE, scaling_factor = 1.5) ## End(Not run)library(ggplot2) # Create a plot p <- ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + theme_cs() ## Not run: # Save in landscape A4 save_a4(p, "myplot.png") # Save in portrait A4 with larger scaling save_a4(p, "myplot_large.png", landscape = FALSE, scaling_factor = 1.5) ## End(Not run)
Creates a discrete color scale for ggplot2 using predefined Core Surveillance color palettes.
scale_color_cs(..., palette = "primary", direction = 1)scale_color_cs(..., palette = "primary", direction = 1)
... |
Additional arguments passed to ggplot2::discrete_scale() |
palette |
Name of color palette to use (default: "primary"). Options: "primary", "warning", "posneg" |
direction |
Direction of color palette: 1 for normal, -1 for reversed (default: 1) |
A ggplot2 discrete color scale
Other csstyle_ggplot2:
scale_fill_cs(),
theme_cs()
library(ggplot2) # Default primary color scale ggplot(mtcars, aes(x = mpg, y = hp, color = factor(cyl))) + geom_point() + scale_color_cs() # Use warning palette ggplot(mtcars, aes(x = mpg, y = hp, color = factor(cyl))) + geom_point() + scale_color_cs(palette = "warning")library(ggplot2) # Default primary color scale ggplot(mtcars, aes(x = mpg, y = hp, color = factor(cyl))) + geom_point() + scale_color_cs() # Use warning palette ggplot(mtcars, aes(x = mpg, y = hp, color = factor(cyl))) + geom_point() + scale_color_cs(palette = "warning")
Creates a discrete fill scale for ggplot2 using predefined Core Surveillance color palettes.
scale_fill_cs(..., palette = "primary", direction = 1)scale_fill_cs(..., palette = "primary", direction = 1)
... |
Additional arguments passed to ggplot2::discrete_scale() |
palette |
Name of color palette to use (default: "primary"). Options: "primary", "warning", "posneg" |
direction |
Direction of color palette: 1 for normal, -1 for reversed (default: 1) |
A ggplot2 discrete fill scale
Other csstyle_ggplot2:
scale_color_cs(),
theme_cs()
library(ggplot2) # Default primary fill scale ggplot(mtcars, aes(x = factor(cyl), fill = factor(cyl))) + geom_bar() + scale_fill_cs() # Use posneg palette ggplot(mtcars, aes(x = factor(vs), fill = factor(vs))) + geom_bar() + scale_fill_cs(palette = "posneg")library(ggplot2) # Default primary fill scale ggplot(mtcars, aes(x = factor(cyl), fill = factor(cyl))) + geom_bar() + scale_fill_cs() # Use posneg palette ggplot(mtcars, aes(x = factor(vs), fill = factor(vs))) + geom_bar() + scale_fill_cs(palette = "posneg")
Sets the global defaults that control how location codes are
turned into labels by format_location_code_as_factor and
format_location_code_as_character. These defaults are used
whenever those functions are called without an explicit label or
label_if_not_unique.
set_global( location_code_to_factor_label = "location_name", location_code_to_factor_label_if_not_unique = "location_name_description_nb" )set_global( location_code_to_factor_label = "location_name", location_code_to_factor_label_if_not_unique = "location_name_description_nb" )
location_code_to_factor_label |
Column name in the reference data to use for location labels (default: "location_name"). |
location_code_to_factor_label_if_not_unique |
Column name in the reference data to use when the chosen labels are not unique (default: "location_name_description_nb"). |
Called for its side effect of updating the global configuration. Returns the assigned value invisibly.
Other csstyle_utilities:
colors,
display_all_palettes(),
every_nth()
# Set global location formatting preferences set_global( location_code_to_factor_label = "custom_name", location_code_to_factor_label_if_not_unique = "custom_description" ) # Reset to defaults set_global()# Set global location formatting preferences set_global( location_code_to_factor_label = "custom_name", location_code_to_factor_label_if_not_unique = "custom_description" ) # Reset to defaults set_global()
Custom ggplot2 theme following Core Surveillance visual guidelines with configurable grid lines and formatting.
Returns a ggplot2 theme component that rotates the x-axis tick labels to be vertical. Add it to a plot like any other theme element.
theme_cs( base_size = 16, base_family = "", base_line_size = base_size/22, base_rect_size = base_size/22, legend_position = "right", x_axis_vertical = FALSE, panel_on_top = TRUE, panel.grid.major.x = FALSE, panel.grid.minor.x = FALSE, panel.grid.major.y = TRUE, panel.grid.minor.y = TRUE ) set_x_axis_vertical()theme_cs( base_size = 16, base_family = "", base_line_size = base_size/22, base_rect_size = base_size/22, legend_position = "right", x_axis_vertical = FALSE, panel_on_top = TRUE, panel.grid.major.x = FALSE, panel.grid.minor.x = FALSE, panel.grid.major.y = TRUE, panel.grid.minor.y = TRUE ) set_x_axis_vertical()
base_size |
Base font size in points (default: 16) |
base_family |
Base font family (default: "") |
base_line_size |
Base line size relative to base_size (default: base_size/22) |
base_rect_size |
Base rectangle size relative to base_size (default: base_size/22) |
legend_position |
Position of legend: "right", "left", "top", "bottom", or "none" (default: "right") |
x_axis_vertical |
Logical: should x-axis labels be vertical? (default: FALSE) |
panel_on_top |
Logical: should panel be drawn on top of data? (default: TRUE) |
panel.grid.major.x |
Logical or element: major vertical grid lines (default: FALSE) |
panel.grid.minor.x |
Logical or element: minor vertical grid lines (default: FALSE) |
panel.grid.major.y |
Logical or element: major horizontal grid lines (default: TRUE) |
panel.grid.minor.y |
Logical or element: minor horizontal grid lines (default: TRUE) |
Complete ggplot2 theme object
A ggplot2 theme component that can be added to a plot.
Other csstyle_ggplot2:
scale_color_cs(),
scale_fill_cs()
library(ggplot2) # Basic usage with default settings ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + theme_cs() # With custom settings ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + theme_cs(legend_position = "bottom", x_axis_vertical = TRUE) library(ggplot2) # Add vertical x-axis labels to any plot ggplot(mtcars, aes(x = rownames(mtcars), y = mpg)) + geom_col() + set_x_axis_vertical()library(ggplot2) # Basic usage with default settings ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + theme_cs() # With custom settings ggplot(mtcars, aes(x = mpg, y = hp)) + geom_point() + theme_cs(legend_position = "bottom", x_axis_vertical = TRUE) library(ggplot2) # Add vertical x-axis labels to any plot ggplot(mtcars, aes(x = rownames(mtcars), y = mpg)) + geom_col() + set_x_axis_vertical()
Opens HTML content in the RStudio viewer pane.
view_html(x)view_html(x)
x |
Character string containing HTML content to display |
Nothing (called for side effects).
# View simple HTML content html_content <- "<h1>Hello World</h1><p>This is a test.</p>" ## Not run: view_html(html_content) ## End(Not run)# View simple HTML content html_content <- "<h1>Hello World</h1><p>This is a test.</p>" ## Not run: view_html(html_content) ## End(Not run)