Мои данные, называемые «x», похожи на следующую структуру:
type eow url seq metric
1 a 2019-07-06 / page1 / 7 0.07075
2 a 2019-07-13 / page1 / 7 0.07543
3 a 2019-07-20 / page1 / 7 0.07704
4 a 2019-07-27 / page1 / 7 0.07873
5 a 2019-08-03 / page1 / 7 0.07551
6 a 2019-08-10 / page1 / 7 0.08027
7 a 2019-08-17 / page1 / 7 0.07957
8 a 2019-08-24 / page1 / 7 0.07885
9 a 2019-08-31 / page1 / 7 0.07753
10 a 2019-09-07 / page1 / 7 0.07034
На основе этих данных я создал вывод ggplot, чтобы обернуть его в оператор renderPlotly в приложении Shiny, используя код:
ggplot() +
geom_line(data = x, aes(x=eow, y=metric, color=url), size = 1, show.legend = TRUE) +
geom_text(data = subset(x, eow == max(eow)), aes(label = seq, colour = url, x = eow, y = metric), hjust = -.9) +
theme_minimal() +
scale_size_area() +
xlab("Week Ending") +
theme(legend.position = "right", axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_x_date(date_breaks = "2 weeks", labels = date_format("%m/%d/%Y")) +
scale_y_continuous(labels = scales::percent_format(accuracy = 1))
Однако, когда я добавляю дополнительные диаграммы на диаграмму, метки данных перекрываются и графически не поддерживают ggrepel. Я перешел на график, но я не могу заставить метки оси X отображаться по неделям и с интервалом в две недели, а также не отображать метку данных в конце каждой строки:
plot_ly(data = x,
x = ~eow,
y = ~metric,
color = ~url,
type = 'scatter',
mode = "lines",
textposition = 'top center') %>%
layout(
xaxis = list(
autotick = FALSE,
dtick = "W2",
type = 'week',
tickformat = "%m/%d/%Y"
))
Любая помощь очень ценится.