Метки в графике R перезаписываются geom_line () - PullRequest
0 голосов
/ 03 марта 2020

Я использую ggplot и geom_line для построения графика в R, но я вижу, что метки перезаписываются графиком. Можно ли как-то решить эту проблему, чтобы ярлыки были хорошо видны? Кроме того, я хотел бы иметь слова «Валовой объем продаж» вместо метки оси Y «значение». Как мне этого добиться? Спасибо.

Вот код, который я использовал для получения этого графика.

    library(ggrepel)
    plots_yearly<-lapply(overall_yearly_gross_sales,function(category_table){o<-melt(category_table, id = "Year", measure = c("XXXXXX","YYYYYY","ZZZZZ"));
    ggplot(o, aes(Year, value, colour = variable,label=value)) + geom_text_repel()+geom_line()+ 
    #geom_text(aes(label=value), hjust=c(0.5), vjust=c(1))
    labs(title=paste(category_table$Category,"Yearly gross sales (in $M)",sep=" "))})

enter image description here

Ответы [ 2 ]

1 голос
/ 03 марта 2020

geom_text_repel() или geom_label_repel() принимают много аргументов, которые вы можете найти здесь:

https://www.rdocumentation.org/packages/ggrepel/versions/0.8.1/topics/geom_label_repel

Взгляните на примеры для вдохновения. Например, вы можете использовать цветную рамку, чтобы выделить метки, и добавить соединительную линию для обозначения связанной точки на линии.

Кроме того, чтобы надписи появлялись над линией, вы должны добавить geom_line() перед метки.

Чтобы изменить названия осей, вы можете просто добавить + labs(y="Gross Sales") или + ylab("Gross Sales")

0 голосов
/ 03 марта 2020

Сработало следующее.

plots_yearly<-lapply(overall_yearly_gross_sales,function(category_table){o<-melt(category_table, id = "Year", measure = c("XXXX","YYYY","ZZZZ"));
ggplot(o, aes(Year, value, colour = variable)) +geom_line()+     geom_label_repel(aes(label=value))+
labs(title=paste(category_table$Category,"Yearly gross sales (in $M)",sep=" "),y="Gross Sales")})

enter image description here

...