具有值的热图和R中的一些附加功能

时间:2018-03-27 12:57:44

标签: r dataframe ggplot2 heatmap fill

我正在尝试在R中制作热图,与填充一起还应显示值以及填充,还应包括行和列而不应用填充。

我的数据看起来像这样

Year    Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Sum
1999    116 127 202 229 253 271 271 245 212 174 133 115 2348
2000    114 154 193 214 263 271 254 248 210 167 120 102 2310
2001    124 134 194 202 256 270 270 243 212 176 128 108 2317
2002    107 137 199 213 267 269 267 250 211 153 123 109 2304
2003    116 141 192 220 229 265 273 242 215 171 122 107 2294
2004    116 146 191 220 245 268 269 253 212 158 115 107 2301
2005    117 132 191 205 263 261 269 244 211 176 132 110 2310
2006    117 125 203 215 246 263 269 248 207 171 128 116 2309
2007    127 133 186 205 244 268 272 251 210 170 133 118 2317
2008    113 146 201 224 259 266 271 245 201 165 128 114 2335
2009    128 145 201 211 243 264 271 247 211 165 126 111 2324
2010    125 128 188 220 254 263 255 234 199 170 127 112 2277
2011    120 131 203 217 241 268 263 247 205 173 131 113 2312
2012    119 133 195 220 241 263 266 249 204 156 120 113 2278
2013    117 142 202 224 248 262 270 249 209 177 117 101 2317
2014    118 144 181 212 233 258 273 250 209 168 126 111 2284
2015    110 132 189 228 257 262 269 241 194 155 113 111 2260
2016    117 147 184 217 253 259 269 238 211 170 123 112 2299
2017    121 147 196 219 260 266 256 242 206 176 132 110 2332
Average 118 138 194 217 250 265 267 246 208 168 125 111 2307

我的数据不仅代表月度值,还会考虑每月的总和和平均值。仅使用月度值制作热图并不困难,我已经做到了。

我工作的链接位于:codeheatmap

我不想在热图中包含代表总和和平均值的最后一行和一列。我不知道怎么能这样做。请指导我这个。我想用ggplot2或heatmap包执行此任务。

我想要这样的事情:enter image description here

1 个答案:

答案 0 :(得分:3)

我们只需要将数据重新排列为长格式。然后绘制图表,确保我们只将一部分数据提供给where some_uuid between 'e99aec55-0000-0000-0000-000000000000' and 'e99aec55-ffff-ffff-ffff-ffffffffffff' 。然后我们重新排列轴排序。

geom_tile

enter image description here