Я пытаюсь использовать тип R
plotly
'bar
, чтобы создать график с горизонтально расположенными прямоугольниками и добавить к нему горизонтальную линию, которая находится на их фоне (а не идет поверхих).Кроме того, я хотел бы, чтобы линия расширялась симметрично на один блок в каждом направлении.
Вот что я делаю:
plot.df <- data.frame(x = paste0("LONG NAME ",1:6),y = 0.2,width=0.75,group = c("A","B","B","B","C","A"),stringsAsFactors = F)
plot.df$group <- factor(plot.df$group)
plotly::plot_ly(plot.df) %>%
plotly::add_trace(x=~x,y=~y/2,type='scatter',mode='lines',line=list(color='black'),showlegend=F) %>%
plotly::add_bars(x=~x,y=~y,width=~width,color=~group) %>%
plotly::layout(xaxis=list(title=NA,zeroline=F,tickangle=45),yaxis=list(title=NA,zeroline=F,showgrid=F,range=c(0,1),showticklabels=F))
Что дает:
Мои вопросы:
- Как продлить линию в обоих направлениях
- Как поставить линию на заднем планетаким образом, он не распространяется по полям
- Я указал
plot.df$y
как 0,2, а диапазон yaxis
равен c(0,1)
, поэтому ящики не выглядят как длинные столбцы.Но тогда легенда кажется слишком высокой.Есть ли лучший способ получить квадратные квадраты с легендой, которая выглядит ниже, чем в настоящее время?