Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中绘制随时间变化的销售图_R_Ggplot2_Plot_Scatter Plot_Gplots - Fatal编程技术网

在R中绘制随时间变化的销售图

在R中绘制随时间变化的销售图,r,ggplot2,plot,scatter-plot,gplots,R,Ggplot2,Plot,Scatter Plot,Gplots,我试图在一个散点图上显示每年的前100名销售额。我使用下面的代码根据销售额选取前100名游戏,然后将其设置为数据框 top100 <- head(sort(games$NA_Sales,decreasing=TRUE), n = 100) as.data.frame(top100) 我打赌使用top100子集时会出现以下错误 错误:数据必须是数据帧或可由fortify()强制的其他对象,而不是数字向量 如果我使用实际的游戏数据,我会把情节附在上面 有什么想法吗 正如@CMichael在评

我试图在一个散点图上显示每年的前100名销售额。我使用下面的代码根据销售额选取前100名游戏,然后将其设置为数据框

top100 <- head(sort(games$NA_Sales,decreasing=TRUE), n = 100)
as.data.frame(top100)
我打赌使用top100子集时会出现以下错误 错误:
数据
必须是数据帧或可由
fortify()
强制的其他对象,而不是数字向量

如果我使用实际的游戏数据,我会把情节附在上面

有什么想法吗


正如@CMichael在评论中指出的,您的代码中有几个问题。 由于缺乏可复制的示例,我使用
iris
dataset来解释代码的错误

前100个头(排序(虹膜$Sepal.Length,递减=真),n=20) [1] 7.9 7.7 7.7 7.7 7.7 7.6 7.4 7.3 7.2 7.2 7.2 7.1 7.0 6.9 6.9 6.9 6.9 6.8 6.8 6.8 因此,首先,您不再需要在
ggplot2
中绘制二维。其次,即使是
colnames
在提取过程中也不会保留,因此您不能在请求
ggplot2
后绘制
Year
Global\u Sales

因此,要解决您的问题,您可以这样做(这里是
iris
dataset的示例):

top100=as.data.frame(头部(虹膜[顺序(虹膜$Sepal.Length,递减=TRUE),1:2],n=100))
您将获得这种类型的data.frame:

str(前100名) “数据帧”:100 obs。共有2个变量: $萼片。长度:num 7.9 7.7.7.7.6 7.4 7.3 7.2 7.2。。。 $萼片。宽度:num 3.8 3.8 2.6 2.8 3 2.8 2.9 3.6 3.2。。。 >头(前100名) 萼片长萼片宽 132 7.9 3.8 118 7.7 3.8 119 7.7 2.6 123 7.7 2.8 136 7.7 3.0 106 7.6 3.0 然后,如果正在打印:

库(ggplot2)
ggplot(top100,aes(x=萼片长度,y=萼片宽度))+geom_点()

警告根据您在示例中提供的内容,我建议您:


top100
as.data.frame(top100)
不起作用-您需要执行
top100=as.data.frame(top100)
谢谢,我在那之后得到:错误:美学必须是长度1或与数据(100):x相同,y….这是因为年份栏中的NA吗?您能否使用
dput
共享数据样本来重现您的问题?在
ggplot
中,如果出现
geom_point
,丢失的数据将向您发出警告并删除数据行。
ggplot(top100)+
  aes(x=Year, y = Global_Sales) +
    geom_point()