r-quantities / units

Measurement units for R
https://r-quantities.github.io/units
175 stars 28 forks source link

Set axis limits with units for ggplot #370

Closed niklhart closed 4 months ago

niklhart commented 4 months ago

Hi, the integration of ggplot2 with the units class is a great feature. However, the axis limits cannot be customized currently:

library(ggplot2)
library(units)

df <- data.frame(x = set_units(1:3,m), y = set_units(4:6,kg))

Calling xlim with a units object results in an error

ggplot(data = df, aes(x=x,y=y)) + geom_point() + xlim(set_units(c(0,4),m))

Error in UseMethod("limits") : no applicable method for 'limits' applied to an object of class "units"

Calling xlim with a numeric vector also results in a (different) error

ggplot(data = df, aes(x=x,y=y)) + geom_point() + xlim(c(0,4))

Error in Ops.units(x, range[1]) : both operands of the expression should be "units" objects