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

使用ggplot2和ggpmisc的stat_fit_glance无法输出两位小数R²值求助

解决方案

你遇到的尾0被自动省略问题,本质是round()返回的是数值型结果,R在拼接字符串时会自动舍弃数值末尾无意义的0,改用字符串格式化函数强制固定两位小数输出即可解决。

只需将代码中stat_fit_glance里的aes(label)参数替换为以下写法即可:

aes(label = paste("R^2 ==", sprintf("%.2f", ..r.squared..), sep = "~"))

sprintf("%.2f", x)会直接将数值x格式化为固定保留两位小数的字符串,哪怕第二位小数是0也会强制保留,完美匹配你需要的R²=0.70、R²=0.90显示效果。

如果你更习惯用format函数,也可以用如下等价写法:

aes(label = paste("R^2 ==", format(round(..r.squared.., 2), nsmall = 2), sep = "~"))

其中nsmall = 2参数指定了最少保留2位小数,同样会自动补全末尾的0。


内容的提问来源于stack exchange,提问作者Arindan Mandal

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 04:45:03