@@ -96,18 +96,18 @@ StatBspline <- ggproto('StatBspline', Stat,
96
96
compute_layer = function (self , data , params , panels ) {
97
97
if (is.null(data )) return (data )
98
98
data <- data [order(data $ group ), ]
99
- groups <- unique (data $ group )
99
+ groups <- unique0 (data $ group )
100
100
paths <- getSplines(data $ x , data $ y , match(data $ group , groups ), params $ n ,
101
101
params $ type %|| % ' clamped' )
102
- paths <- data.frame (
102
+ paths <- data_frame0 (
103
103
x = paths $ paths [, 1 ], y = paths $ paths [, 2 ],
104
104
group = groups [paths $ pathID ]
105
105
)
106
106
paths $ index <- rep(
107
107
seq(0 , 1 , length.out = params $ n ),
108
- length(unique (data $ group ))
108
+ length(unique0 (data $ group ))
109
109
)
110
- dataIndex <- rep(match(unique (data $ group ), data $ group ), each = params $ n )
110
+ dataIndex <- rep(match(unique0 (data $ group ), data $ group ), each = params $ n )
111
111
cbind(
112
112
paths ,
113
113
data [dataIndex , ! names(data ) %in% c(' x' , ' y' , ' group' ), drop = FALSE ]
@@ -152,21 +152,21 @@ StatBspline2 <- ggproto('StatBspline2', Stat,
152
152
if (is.null(data )) return (data )
153
153
data <- data [order(data $ group ), ]
154
154
nControls <- table(data $ group )
155
- groups <- unique (data $ group )
155
+ groups <- unique0 (data $ group )
156
156
paths <- getSplines(data $ x , data $ y , match(data $ group , groups ), params $ n ,
157
157
params $ type %|| % ' clamped' )
158
- paths <- data.frame (
158
+ paths <- data_frame0 (
159
159
x = paths $ paths [, 1 ], y = paths $ paths [, 2 ],
160
160
group = groups [paths $ pathID ]
161
161
)
162
162
paths $ index <- rep(
163
163
seq(0 , 1 , length.out = params $ n ),
164
- length(unique (data $ group ))
164
+ length(unique0 (data $ group ))
165
165
)
166
- dataIndex <- rep(match(unique (data $ group ), data $ group ), each = params $ n )
166
+ dataIndex <- rep(match(unique0 (data $ group ), data $ group ), each = params $ n )
167
167
paths <- cbind(paths , data [dataIndex , ' PANEL' , drop = FALSE ])
168
168
extraCols <- ! names(data ) %in% c(' x' , ' y' , ' group' , ' PANEL' )
169
- pathIndex <- match(unique (data $ group ), paths $ group )
169
+ pathIndex <- match(unique0 (data $ group ), paths $ group )
170
170
pathIndex <- unlist(Map(seq , from = pathIndex , length.out = nControls ))
171
171
paths $ .interp <- TRUE
172
172
paths $ .interp [pathIndex ] <- FALSE
@@ -219,9 +219,9 @@ GeomBspline0 <- ggproto('GeomBspline0', GeomPath,
219
219
linemitre = 1 , na.rm = FALSE ) {
220
220
coords <- coord $ transform(data , panel_scales )
221
221
if (! is.integer(coords $ group )) {
222
- coords $ group <- match(coords $ group , unique (coords $ group ))
222
+ coords $ group <- match(coords $ group , unique0 (coords $ group ))
223
223
}
224
- startPoint <- match(unique (coords $ group ), coords $ group )
224
+ startPoint <- match(unique0 (coords $ group ), coords $ group )
225
225
xsplineGrob(coords $ x , coords $ y ,
226
226
id = coords $ group , default.units = ' native' ,
227
227
shape = 1 , arrow = arrow , repEnds = type == ' clamped' ,
0 commit comments