0

我正在使用新包ggmosaic来绘制马赛克图ggplot2

对于我使用的数据集中的一个变量,我有一个错误“计算失败stat_mosaic()”。问题似乎与变量的内容有关,更准确地说是]围绕).

一个简单的例子:

# Parameters
library(ggplot2)
library(ggmosaic)
set.separators(c(":", ";", "|")) # cf. ggmosaic documentation

# Plot OK
ggplot(data = df) +
  geom_mosaic(aes(weight = 1, x = product(TheGroup, TheRange), fill = TheGroup), na.rm = TRUE) +
  theme(axis.text.x = element_text(angle = 0, hjust = .1)) +
  labs(x = "TheRange", y = "TheGroup")

# Plot NOK
ggplot(data = df) +
  geom_mosaic(aes(weight = 1, x = product(TheRange, TheGroup), fill = TheRange), na.rm = TRUE) +
  theme(axis.text.x = element_text(angle = 0, hjust = .1)) +
  labs(x = "TheGroup", y = "TheRange")

以及带有变量的数据框的子集:

df <- structure(list(TheRange = structure(c(1L, 1L, 2L, 1L, 1L, 1L, 
                                            1L, 2L, 3L, 3L, 2L, 3L, 1L, 3L, 1L, 2L, 3L, 2L, 1L, 2L, 3L, 2L, 
                                            1L, 2L, 2L, 3L, 1L, 3L, 2L, 3L, 2L, 3L, 3L, 3L, 1L, 3L, 1L, 2L, 
                                            1L, 3L, 3L, 1L, 3L),
                     .Label = c("(0,30]", "(30,50]", "(50,100]"), class = "factor"),
                     TheGroup = c("Groupe 2", "Groupe 1", "Groupe 2", 
                                 "Groupe 1", "Groupe 1", "Groupe 2", "Groupe 1", "Groupe 2", "Groupe 2", 
                                 "Groupe 2", "Groupe 2", "Groupe 1", "Groupe 2", "Groupe 2", "Groupe 2", 
                                 "Groupe 2", "Groupe 1", "Groupe 2", "Groupe 1", "Groupe 2", "Groupe 1", 
                                 "Groupe 1", "Groupe 1", "Groupe 2", "Groupe 1", "Groupe 1", "Groupe 1", 
                                 "Groupe 2", "Groupe 1", "Groupe 1", "Groupe 2", "Groupe 2", "Groupe 2", 
                                 "Groupe 2", "Groupe 2", "Groupe 2", "Groupe 2", "Groupe 2", "Groupe 2", 
                                 "Groupe 2", "Groupe 2", "Groupe 2", "Groupe 2")),
                     .Names = c("TheRange", "TheGroup"),
                row.names = c(1L, 2L, 3L, 4L, 5L, 14L, 15L, 16L, 
                                               17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 28L, 30L, 
                                               31L, 33L, 34L, 35L, 36L, 37L, 38L, 39L, 41L, 42L, 43L, 44L, 46L, 
                                               47L, 49L, 50L, 51L, 52L, 53L, 54L, 55L, 56L),
                class = "data.frame")
4

1 回答 1

0

该错误已在 ggmosaic (0.1.2) 的最新版本中得到纠正。

于 2017-04-07T09:20:41.590 回答