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

关于使用percent_format()及R语言ggplot2绘图代码的翻译需求

用percent_format()函数实现的朝韩比例对比可视化代码解析

咱们来拆解这段基于R语言ggplot2包的可视化代码,它主要用来对比朝鲜(North Korea)和韩国(South Korea)的相关比例数据,核心用到percent_format()函数来优化轴标签的显示效果:

第一步:数据格式重塑

首先用tidyr包的gather()函数把宽格式数据集转成长格式,方便后续绘图调用:

frequency <- gather(frequency, country, proportion, `North Korea`:`South Korea`)

这段代码会把frequency数据集中从North Korea到South Korea的所有列,重新整理为两列:

  • country:存储国家名称(North Korea/South Korea)
  • proportion:存储对应国家的比例数值

第二步:核心可视化代码

接下来是ggplot绘图的核心逻辑,代码实现了带参考线、抖动散点和文本标签的双对数轴散点图:

ggplot(frequency, aes(x = `South Korea`, y = `North Korea`, color = difference)) + 
  geom_abline(color = "gray40", lty = 2) + 
  geom_jitter(alpha = 0.1, size = 2.5, width = 0.3, height = 0.3) + 
  geom_text(aes(label = word), check_overlap = TRUE, vjust = 1.5) + 
  scale_x_log10(labels = percent_format()) + 
  scale_y_log10(labels = percent_format()) + 
  scale_color_gradient(limits = c(0, 0.001), low = "darkslategray4", high =...

逐行解释下关键部分:

  • 初始化ggplot时,指定x轴为韩国的比例值、y轴为朝鲜的比例值,点的颜色由difference字段的数值决定
  • geom_abline()添加一条灰色虚线作为参考线,方便对比数据分布
  • geom_jitter()生成抖动散点:设置低透明度(alpha=0.1)避免密集点遮挡,通过width和height控制抖动范围,解决点重叠问题
  • geom_text()为每个点添加文本标签(内容来自word字段),开启check_overlap=TRUE自动隐藏重叠标签,vjust=1.5把标签放在点的下方
  • 重点:scale_x_log10(labels = percent_format())和scale_y_log10(labels = percent_format())——将x、y轴设为对数刻度的同时,用percent_format()把轴上的数值转换为百分比格式显示,让比例数据更直观
  • scale_color_gradient()设置颜色渐变规则:限定颜色映射范围为0到0.001,低数值对应深灰色,高数值对应代码未写完的高亮色

内容的提问来源于stack exchange,提问作者Winston Willett

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:32:13