R ggplot2点图添加比例\形状\手动()不工作

R ggplot2点图添加比例\形状\手动()不工作,r,ggplot2,plot,shapes,dot,R,Ggplot2,Plot,Shapes,Dot,使用此代码,我已成功地使用ggplot2在R中创建了点图 data <- data.frame("State" = c("NJ", "NY", "PA", "ND","NJ", "NY", "PA", "ND"), "Year" = c("1985", "198

使用此代码,我已成功地使用ggplot2在R中创建了点图

data <- data.frame("State" = c("NJ", "NY", "PA", "ND","NJ", "NY", "PA", "ND"), "Year" = c("1985", 
"1985", "1985", "1985", "1990", "1990", "1990", "1990"), "DataValue" = c(33, 20, 44, 21, 55, 11, 17, 
46))


p <- ggplot(data,aes(x = State, y = DataValue, color = Year)) + 
  geom_point(data = subset(data, !is.na(DataValue))) + 
  geom_point(data = subset(data, is.na(DataValue)), color = "pink") +
  scale_shape_manual(values=c(4, 17))+
  scale_color_manual(values=c("cyan", "blueviolet", "purple", "turquiose4"))  + 
  theme(axis.text.x = element_text(colour = "black"), plot.title = element_text(hjust = 0.5)) +
  geom_vline(xintercept = c(3.5)) + labs(title = "DataValues", x = "State/Territory", y = "Value") +
  geom_hline(yintercept = 0, color = "grey24")
p<- p + theme(legend.position="bottom")
p

数据也许这就是你想要的:

  • 要使“缩放形状”手动工作,您必须在形状上映射变量,即映射
    形状上

  • 如果您对几何图形使用不同的数据集和/或美学,我认为最好将它们设置为局部,而不是在
    ggplot()
    中全局设置,即将
    color
    shape
    上的贴图移动到第一个
    geom\u点
    。这应该给你正确的颜色和形状


  • 数据您可以使用形状、大小或颜色中的一种来标识组,但不能使用多个。ggplot2的逻辑是,如果您为变量1使用颜色,则您有一个图例,说明在保持形状不变的情况下每个颜色对应的内容;如果您为变量2使用形状,则您可以添加另一个图例,说明在保持颜色不变的情况下每个形状对应的内容。