Provides 'ggplot2' coordinates, layers, scales, themes, and presets for
creating psychrometric charts. The package supports metric and inch-pound
unit systems, psychrometric grids, state points, process lines, zones, and
thermal comfort overlays for heating, ventilation, air conditioning, and
building performance workflows. Psychrometric property calculations are
based on 'PsychroLib' (Meyer and Thevenard, 2019)
‘ggplot2’ extension for making psychrometric charts.
You can install the released version of ggpsychro from CRAN with:
install.packages("ggpsychro")
You can install the development version from GitHub with:
# install.packages("remotes")
remotes::install_github("hongyuanjia/ggpsychro")
The creation of a psychrometric chart starts with ggpsychro(). The
result is a ggplot object, so grids, stats, geoms, scales, and themes
can be added with the same + workflow used by ggplot2.
ggpsychro(tdb_lim = c(0, 50), hum_lim = c(0, 30)) +
psychro_preset("minimal")
Comfort overlays can be added as regular layers. The PMV overlay combines root-traced filled bands, PMV isolines, and text labels on the same psychrometric chart.
ggpsychro(tdb_lim = c(5, 40), hum_lim = c(0, 24)) +
psychro_preset("minimal") +
geom_comfort_pmv(
contour_levels = seq(-3, 3, by = 0.5),
n = c(70, 48)
) +
scale_fill_comfort_pmv(name = "PMV")
The longer examples live on the pkgdown site:
ggpsychro’s recent chart-layout and higher-level layer work was informed by two excellent psychrometric chart projects:
ggpsychro does not vendor code from those projects. The implementation remains R/ggplot2-native, with psychrometric property calculations delegated to PsychroLib where appropriate.
Hongyuan Jia
The project is released under the terms of MIT License.
Copyright © 2019-2026 Hongyuan Jia
Please note that the ‘ggpsychro’ project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.