【发布时间】:2018-03-26 11:02:18
【问题描述】:
我是 R 新手,所以我还没有弄清楚如何将相同的更改应用于多个数据帧并从每个结果数据帧中绘图。我通过将每个输入 csv 一个一个地插入到 R 降价文件中来完成此操作。
我从输入文件中的相同起始格式创建了 5 个数据帧(此处仅显示 3 个),使用相同的操作集来获得一个看起来像这样的“可绘图”数据帧(此处仅显示前几行) .只有“统计”不同:
Df1-HA 类型:
Stat Segment NullbyObs id stars
49 H4 HA 0.297083314 1 ***
25 H13 HA 0.09558552 2 ***
57 H5 HA 0.150072798 3 ***
9 H10 HA 0.184111297 4 ***
33 H2 HA 0.182582378 5 ***
81 H9 HA 0.341334025 6 ***
73 H7 HA 0.256536424 7 ***
65 H6 HA 0.260052443 8 ***
41 H3 HA 0.504939556 9 **
1 H1 HA 0.260205358 10 ***
17 H11 HA 0.503464461 11 **
56 H4 PB2 0.184828306 12 ***
32 H13 PB2 0.298094661 13 **
64 H5 PB2 0.199737211 14 ***
Df2-赛季:
Stat Segment NullbyObs id stars
25 spring migration HA 0.309504658 1 ***
17 overwintering HA 0.423053354 2 *
9 breeding HA 0.712614687 3 .
1 autumn migration HA 0.586144734 4 .
32 spring migration PB2 0.318294644 5 ***
24 overwintering PB2 0.450508305 6 ***
16 breeding PB2 0.636836392 7
Df3-HostType:
Stat Segment NullbyObs id stars
17 OD HA 0.447867405 1 *
25 YAG HA 0.192755193 2 ***
9 MD HA 0.337331563 3 **
1 BMG HA 0.42653249 4 *
24 OD PB2 0.271704769 5 ***
32 YAG PB2 0.260490477 6 ***
16 MD PB2 0.446735462 7 **
我使用此代码从每个数据帧中绘制:
plot <- ggplot(data = plotdata,
aes(x = Segment, y = Stat, fill = NullbyObs)) +
geom_tile() +
scale_fill_distiller(palette = "RdYlBu", trans = "log10") +
labs(y=NULL, x=NULL, fill="Null/Obs") +
geom_text(aes(label=stars), color="black", size=4) +
coord_equal()
plot
为什么显示了 Df1-HAtype 的图例,但 Df2-Season 和 Df3-HostType 的图中却没有图例?
【问题讨论】:
-
对我来说这看起来是一个错误,所以我发布了一个问题:No legend with trans = log10 for certain fill/color values