我正在创建 ggplot 视觉效果,并使用 ggplotly 进行交互。 ggplot 视觉效果很好,但是当我将它与 ggplotly 一起使用时,图例剪辑......
以下是我正在讨论的两个视觉效果:
ggplot:
ggplotly:
我的代码:
plotall <- ggplot(vacgdp3, aes(x=GDP, y=people_vaccinated_per_hundred, size = total_vaccinations, color = continent, text = paste0("People Vaccinated Per Hundred: ", people_vaccinated_per_hundred, "\nCountry: ", country))) +
geom_point(alpha = 0.7) +
scale_x_continuous(labels = unit_format(unit = "Trillion", scale = 1e-12))+
ylab("People Vaccinated Per Hundred")+
xlab("GDP per Capita")
ggplotly(plotall, tooltip = c("x", "text"))
我上传了一个使用 dput() 为数据集创建的 txt 文件:
https://www.dropbox.com/s/j0a7z9qfq20h91m/Vac.txt?dl=0
我一直在尝试用 ggplotly 格式化图例,但似乎没有任何效果。任何帮助将不胜感激。
此外,任何有关如何改进提问的建议也将受到欢迎,因为我是新手!
不确定详细信息,但您可以从 ggplot 中删除图例标题并通过
ggplot
添加图例标题,而不是通过 ggplotly
和 layout
添加图例标题。这样 plotly
将处理图例标题的长度并根据需要增加边距:
library(plotly)
plotall <- ggplot(vacgdp3, aes(x=GDP, y=people_vaccinated_per_hundred, size = total_vaccinations, color = continent, text = paste0("People Vaccinated Per Hundred: ", people_vaccinated_per_hundred, "\nCountry: ", country))) +
geom_point(alpha = 0.7) +
scale_x_continuous(labels = unit_format(unit = "Trillion", scale = 1e-12))+
ylab("People Vaccinated Per Hundred") +
xlab("GDP per Capita") +
labs(color = NULL, size = NULL)
ggplotly(plotall, tooltip = c("x", "text")) %>%
layout(legend = list(title = list(text = "Legend title long long long long<br>")))
有人知道一种方法来显示两个不同的图例(在这种情况下,大陆颜色和点大小),而不是一个合并的图例?