我正在尝试使用ggmosaic创建一个spineplot。但是,轴刻度线和标签未显示。我还尝试使用scale_x_productlist
手动添加它们。
根据以下讨论,存在不同ggplot2和ggmosaic版本的兼容性问题:https://github.com/haleyjeppson/ggmosaic/issues/41。 不幸的是,ggmosaic 0.2.0和ggplot2 3.3.2似乎仍然会出现问题。
可以更改轴标签。
我将不胜感激任何建议!谢谢!
library(tidyverse)
library(ggplot2)
library(ggmosaic)
library(haven)
library(titanic)
packageDescription("ggmosaic")$Version
#> [1] "0.2.0"
#> [1] "0.2.0"
packageDescription("ggplot2")$Version
#> [1] "3.3.2"
#> [1] "3.3.2"
titanic <- titanic::titanic_train
titanic <- titanic %>%
mutate(
survived = factor(Survived, labels = c("Died", "Survived")),
pclass = factor(Pclass)
)
#default tick marks are missing
ggplot(data = titanic) +
geom_mosaic(aes(x = product(pclass), fill = survived))
#adding labels works
ggplot(data = titanic) +
geom_mosaic(aes(x = product(survived,pclass), fill = survived)) +
ggplot2::labs(x = "Passenger class",
y = "Survived sinking",
title = "Survival rate by passenger class")
#scale_x_productlist() does not change the result
ggplot(data = titanic) +
geom_mosaic(aes(x = product(survived,pclass), fill = survived)) +
ggplot2::labs(x = "Passenger class",
y = "Survived sinking",
title = "Survival rate by passenger class") +
scale_x_productlist(breaks=c(1:3), labels=c("class1", "class2", "class3"))
没有标签和刻度线的脊线图
带有标签但没有刻度线的脊线图