首先,我道歉,因为我一直试图通过将其分成小部分来解决这个问题(请参阅1,2,3)。然而,在合并所有这些时我完全陷入困境。为了复制它并简化再现性,您可以download the original data here。
在R中加载它们后,就是结构:
var svg = SVG.get('mysvg');var draw = svg.doc(); draw.polyline()....
那么,我想要什么?我想使用以下条件在ggplot2中构建折线图:
> str(data_example2)
'data.frame': 252 obs. of 4 variables:
$ Groups : Factor w/ 6 levels "Group1","Group2",..: 1 1 1 1 1 1 1 2 2 2 ...
$ Y_values: Factor w/ 126 levels "C if I1I2P3P4M1M2",..: 63 95 1 115 123 112 114 48 17 67 ...
$ Units : Factor w/ 2 levels "Uni1","Uni2": 1 1 1 1 1 1 1 1 1 1 ...
$ X_value : num 1 0.35 0.93 0.73 0.95 0.32 0.88 0.13 0.93 0.84 ...
。X_value
。正如您在变量Y_value
中看到的那样,我们有两个组(Units
和Uni1
),每个组由126个观察组成。更重要的是,每个单位的126个观测值由126个因子组成。保持这些Uni2
的顺序是非常重要的,因此在折线图中,左上角Y值应为Y_values
,左下角应为{{1} }} I1 if I2CP3P4M1M2
和I1I2CP3 if P4M1M2
一行。Uni1
中表示的因子对背景进行着色,可能使用Uni2
,但不表示矩形的轮廓并为6个组中的每个组保留不同的颜色。 答案 0 :(得分:3)
希望这可以提供帮助,它并不完美但可以让您更接近您的需求:
<audio id="audio" controls="controls">
<source id="source">
</audio>
<br>
<button id="set_src">set src</button>
library(readr)
library(ggplot2)
y_val_levels <- unique(df$Y_values)
geom_ribbon
ggplot(df, aes(x = factor(Y_values, levels = y_val_levels, ordered = TRUE))) +
geom_ribbon(aes(ymin = -Inf, ymax = Inf, fill = Groups, group = Groups), alpha = .2) +
geom_line(aes(y = X_value, color = Units, group = Units)) +
geom_point(aes(y = X_value, color = Units)) +
scale_x_discrete('Bayesian combination') +
coord_flip() +
theme_minimal() +
theme(axis.text.y = element_text(size = 5))
geom_rect
(注意,较暗的切片是由ggplot(df, aes(x = factor(Y_values, levels = y_val_levels, ordered = TRUE))) +
geom_rect(aes(xmin = as.integer(factor(Y_values, levels = y_val_levels, ordered = TRUE)) - .5,
xmax = as.integer(factor(Y_values, levels = y_val_levels, ordered = TRUE)) + .5,
ymin = -Inf,
ymax = Inf,
fill = Groups, group = Groups), alpha = .2) +
geom_line(aes(y = X_value, color = Units, group = Units)) +
geom_point(aes(y = X_value, color = Units)) +
scale_x_discrete('Bayesian combination') +
coord_flip() +
theme_minimal() +
theme(axis.text.y = element_text(size = 5))
)
由reprex package(v0.2.0)创建于2018-05-15。