You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为statebins绘制的州级热力图添加计数标签?

如何给statebins生成的州级热力图添加自定义标签?

你已经通过statebins包生成了州级热力图,想要为每个州的bin添加提前准备在lab列中的标签(包含州缩写和数值),原始代码如下:

library(statebins)

dat = data.frame(state = state.abb, val = rep(0:24, 2))
dat$lab = paste(dat$state, dat$val, sep = "\n")
head(dat)
#   state val   lab
# 1    AL   0 AL\n0
# 2    AK   1 AK\n1
# 3    AZ   2 AZ\n2
# 4    AR   3 AR\n3
# 5    CA   4 CA\n4
# 6    CO   5 CO\n5

sb = statebins(dat, state_col = "state", value_col = "val") +
  theme_statebins()
sb

statebins热力图示例

解决方案

statebins基于ggplot2实现,因此可以直接叠加geom_text()图层来添加标签,只需将lab列映射到label参数即可,同时可调整标签的颜色、大小等样式以适配热力图:

library(statebins)
library(ggplot2) # 若未加载ggplot2需先加载

dat = data.frame(state = state.abb, val = rep(0:24, 2))
dat$lab = paste(dat$state, dat$val, sep = "\n")

sb = statebins(dat, state_col = "state", value_col = "val") +
  geom_text(aes(label = lab), color = "white", size = 3) + # 添加标签层
  theme_statebins()
sb

说明

  • geom_text(aes(label = lab))会自动匹配statebins生成的每个州的坐标位置,将lab列的内容作为标签显示在对应bin的中心
  • 调整color参数可以让标签和热力图的颜色形成对比(比如白色在深色背景上更清晰),size参数可控制标签字体大小,根据需求调整即可

内容的提问来源于stack exchange,提问作者Gregor Thomas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 02:10:25