@@ -63,22 +63,26 @@ GuideAxisTheta <- ggproto(
63
63
64
64
transform = function (params , coord , panel_params ) {
65
65
66
- opposite_var <- setdiff(c(" x" , " y" ), params $ aesthetic )
67
- opposite_value <- switch (params $ position , top = , right = , theta.sec = - Inf , Inf )
68
- if (is.unsorted(panel_params $ inner_radius %|| % NA )) {
69
- opposite_value <- - opposite_value
70
- }
71
- if (nrow(params $ key ) > 0 ) {
72
- params $ key [[opposite_var ]] <- opposite_value
73
- }
74
- if (nrow(params $ decor ) > 0 ) {
75
- params $ decor [[opposite_var ]] <- opposite_value
66
+ position <- params $ position
67
+
68
+ if (! is.null(position )) {
69
+ opposite_var <- setdiff(c(" x" , " y" ), params $ aesthetic )
70
+ opposite_value <- switch (position , top = , right = , theta.sec = - Inf , Inf )
71
+ if (is.unsorted(panel_params $ inner_radius %|| % NA )) {
72
+ opposite_value <- - opposite_value
73
+ }
74
+ if (nrow(params $ key ) > 0 ) {
75
+ params $ key [[opposite_var ]] <- opposite_value
76
+ }
77
+ if (nrow(params $ decor ) > 0 ) {
78
+ params $ decor [[opposite_var ]] <- opposite_value
79
+ }
76
80
}
77
81
78
82
params <- GuideAxis $ transform(params , coord , panel_params )
79
83
80
84
key <- params $ key
81
- n <- nrow (key )
85
+ n <- vec_size (key )
82
86
if (n < 1 ) {
83
87
return (params )
84
88
}
0 commit comments