This suggests that your data need to be rescaled. Can you share the range of values?
This is enough to get raster to print our ranges for each band
print(s)
otherwise to be more explicit
cellStats(s, min)
cellStats(s, max)
Since one of your values - 923 - is not something obvious, like 1 or 255 then it's not clear what the scaling should be.
If you know the maximum and 0 is the minimum then this would be enough:
plotRGB(s, scale = [max])
Generally you can update each band like this, but without knowing what the overall range of values is or what they represent this is unlikely to be sensible as we need a common from
value, not the range of values in any given band.
## danger!! we also need from = ??
setValues(band_red, scales::rescale(values(band_red), to = c(0, 255)))
Down under the hood the rgb
function expects values in 0, 1 unless you specify a maxColorValue
(that's what raster::plotRGB
is doing with max = scale
as reported in the error message.