Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.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_Scatter Plot - Fatal编程技术网

如何在R中制作多面散点图?

如何在R中制作多面散点图?,r,ggplot2,scatter-plot,R,Ggplot2,Scatter Plot,我是R的新手,我已经研究这个问题有一段时间了,需要一些帮助。我有一个CSV文件(称为cleaned_doc),其中包含每个国家销售的产品的评级和百分比,我想在一个分面散点图中比较两个国家,在这些特定原产国销售的所有产品都有两个分面 当我试着这样做的时候 ggplot(data = cleaned_doc, aes(Percent, Rating)) + geom_point() + labs( y = "Rating", x = "Percent") + facet_grid( ~

我是R的新手,我已经研究这个问题有一段时间了,需要一些帮助。我有一个CSV文件(称为cleaned_doc),其中包含每个国家销售的产品的评级和百分比,我想在一个分面散点图中比较两个国家,在这些特定原产国销售的所有产品都有两个分面

当我试着这样做的时候

ggplot(data = cleaned_doc, aes(Percent, Rating)) +
  geom_point() +
  labs( y = "Rating", x = "Percent") + 
  facet_grid( ~ Origin ) 
countries <- gather(cleaned_doc, key="measure", value="value", c(Origin["Germany"], Origin["France"]))

answer2 <- ggplot(data = cleaned_doc, aes(Percent, Rating)) +
  geom_point() +
  labs( y = "Rating", x = "Percent") + 
  facet_grid(~ countries )
我得到了列出的所有国家的分面散点图。然而,我只想比较2(在这个例子中,我选择了德国和法国),我想在后面添加更多的组件,但这些主要是美学,所以我现在只想保持简单。根据我在Stackoverflow和其他地方看到的情况,我试着这样做

ggplot(data = cleaned_doc, aes(Percent, Rating)) +
  geom_point() +
  labs( y = "Rating", x = "Percent") + 
  facet_grid( ~ Origin ) 
countries <- gather(cleaned_doc, key="measure", value="value", c(Origin["Germany"], Origin["France"]))

answer2 <- ggplot(data = cleaned_doc, aes(Percent, Rating)) +
  geom_point() +
  labs( y = "Rating", x = "Percent") + 
  facet_grid(~ countries )

我真的不知道这意味着什么,我做错了什么。所以我真的很感激任何帮助

您只需要创建一个没有其他国家的数据框架。您可以使用
filter
,也可以在基本R中这样做:

cleaned_doc2 <- cleaned_doc[which(cleaned_doc$Origin == "Germany" | cleaned_doc$Origin == "France"),]
cleaned_doc2$Origin <- as.character(cleaned_doc2$Origin)

ggplot(data = cleaned_doc, aes(Percent, Rating)) +
  geom_point() +
  labs( y = "Rating", x = "Percent") + 
  facet_grid( ~ Origin )

cleaned_doc2您只需将数据向下过滤到所需的国家/地区即可,例如,
cleaned_doc%>%filter(原产地%c(“德国”、“法国”))%%>%ggplot(aes(百分比,评级))+…
。提出一个人们可以帮助解决的问题。这包括一个数据样本和所有必要的code@ulfelder非常感谢你的帮助!!这就解决了:谢谢你!!我已经为此挣扎了几个小时——很高兴你们能这么快帮助我:)