Я пишу пакет, который использует оба ggplot2 и tidyquant, которые полностью импортированы:
#' @import ggplot2
#' @import tidyquant
Позже где-то в моей функции plot.object()
я строю гистограмму с
x %>%
ggplot() +
geom_barchart(
aes(
x = date,
open = open,
high = high,
low = low,
close = close
)
)
После того, как пакет установлен, загружен и подключен, я вызываю plot.object()
, что приводит к следующей ошибке:
Error in eval(`_inherit`, env, NULL) : object 'GeomLinerange' not found
и трассировке:
12. eval(`_inherit`, env, NULL)
11. eval(`_inherit`, env, NULL)
10. super()
9. fetch_ggproto(super(), name)
8. fetch_ggproto(x, name)
7. `$.ggproto`(geom, "aesthetics")
6. geom$aesthetics
5. as.vector(y)
4. intersect(names(params), geom$aesthetics())
3. ggplot2::layer(stat = StatLinerangeBC, geom = GeomLinerangeBC,
data = data, mapping = mapping, position = position, show.legend = show.legend,
inherit.aes = inherit.aes, params = list(na.rm = na.rm, fill_up = fill_up,
fill_down = fill_down, color_up = color_up, color_down = color_down, ...
2. geom_barchart(aes(x = date, open = open, high = high, low = low,
close = close)) at moex_candles-plot.R#61
1. plot.object()
Однако , если ggplo2 подключен до вызова plot.object
, то ошибки нет.
Я подозреваю, что это может быть ошибкой тидикванта, потому что все функции ggplot2 работают должным образом, и ошибкапроисходит, только если вызывается tidyquant::geom_barchart()
.
Или в импортирующей магии есть что-то, чего мне не хватает?