我是一名新手,正在学习R语言,并从网上获取了一些关于国家的测试数据。目前,我正在尝试绘制图表,并在创建全球失业率的饼图时遇到了以下错误:
我发出了以下命令:
>values <- read.csv("D:\\test\\countrydata.csv")
>names(values)
[1] "name" "size" "pop" "unemployed" ...
>typeof(values$unemployed)
"integer"
>pie(values$pop)
Error in pie(values$unemployed) :
'x' values must be positive
>pie(values$pop, na.rm=TRUE)
Error in pie(values$unemployed, na.rm=TRUE) :
'x' values must be positive
我想要绘制的数据集是一组整数,全部为正数、0(感谢金姆)或NA。
在绘制整数时,0并不会造成问题,我已经尝试过了。
>pie(as.integer(c(0,1,2,3))
它运行良好。
我错过了什么?
谢谢和问候,
BillDoor
pie(values$pop)
,但是错误消息显示Error in pie(values$unemployed)
?你想要一个pop
的饼图,而错误消息却显示unemployed
?真的吗? - SpacedmanNA
值。试试pie(as.integer(c(0,1,2,3,NA)))
,你会得到同样的错误...(而且pie
函数中没有na.rm
参数...) - Cathpie
函数没有na.rm=TRUE
参数。因为pie
会将未匹配的参数作为图形参数读入,所以它不会将其视为错误。教训是:仅仅因为一个R函数有一个有用的na.rm
参数,并不意味着所有函数都具备该参数。在R中不要期望一致性,始终阅读文档! - Spacedman