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

R语言ggplot柱状图数值显示异常求助

问题解决:柱状图数值与实际不符的修复

你的问题核心是**Total.Cases列的数据类型不对**——大概率是字符型(比如带逗号的格式100,000,000),ggplot会把它当文本处理,没法正确识别数值大小,导致柱子高度错乱。直接按下面步骤修改代码即可:

1. 先处理数据类型

读取数据后,优先把Total.Cases转换成数值型:

Data = read.csv("covid_worldwide.csv")
# 保留需要的列
Data = Data[c("Country", "Total.Cases", "Total.Deaths", "Total.Recovered","Active.Cases", "Total.Test", "Population")]    

# 关键步骤:清洗Total.Cases,去掉逗号等非数字字符,转成数值
Data$Total.Cases = as.numeric(gsub(",", "", Data$Total.Cases))

# 取前5行子集
df_subset = Data[1:5, ]

2. 重新绘图

此时再用ggplot绘图,柱子高度就会和实际数值匹配:

library(ggplot2) # 别忘了加载ggplot2包,很多人会漏这一步
Plot = ggplot(df_subset, aes(x = Country, y = Total.Cases)) +
  geom_bar(stat = "identity", fill = "steelblue") +
  labs(title = "Total Cases by Country", x = "Country", y = "Total Cases") +
  # 可选:如果数值太大,给y轴加千分位格式化,更易读
  scale_y_continuous(labels = scales::comma)

print(Plot) # 记得打印图表

额外检查点

  • 如果转换时出现NAs introduced by coercion警告,说明Total.Cases里还有其他非数字内容(比如空格、字母),可以用unique(Data$Total.Cases)查看异常值,针对性清洗。
  • 确认ggplot2包已安装,没装的话先运行install.packages("ggplot2")。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 07:42:14