Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.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 ggplot2:将颜色和形状的图例合并/合并为一个_R_Ggplot2 - Fatal编程技术网

R ggplot2:将颜色和形状的图例合并/合并为一个

R ggplot2:将颜色和形状的图例合并/合并为一个,r,ggplot2,R,Ggplot2,我的代码很早就开始工作了,但是形状和颜色的图例现在已经分开了 ## loading packages library(tibble) library(ggplot) ## an example of data my_data <- tibble(x = seq(1:10), y = rnorm(10, mean = 0, sd = 1), z = rep(c("{ }^{2}*H", "{

我的代码很早就开始工作了,但是形状和颜色的图例现在已经分开了

## loading packages
library(tibble)
library(ggplot)
## an example of data
my_data <- tibble(x = seq(1:10), 
                 y = rnorm(10, mean = 0, sd = 1),
                 z = rep(c("{ }^{2}*H", "{ }^{18}*O"), 5))
##加载包
图书馆(tibble)
图书馆(ggplot)
##数据示例

我的数据这是我的最新更新。您可以使用
as.expression
bquote

ggplot(data = my_data, mapping = aes(x = x, y = y, color = z, shape = z, group = z)) +            
  geom_point() +            
  geom_line() +    
  scale_color_discrete(name = "", labels = c(as.expression(bquote({ }^{2}*"H")), as.expression(bquote({ }^{18}*"O"))))+
  scale_shape_discrete(name = "", labels = c(as.expression(bquote({ }^{2}*"H")), as.expression(bquote({ }^{18}*"O"))))

如果名称和标签相同,则只应绘制一个图例。这种情况不会发生,所以我认为最近添加了一个bug,它可能与在
scale\u*\ u manual()
语句中使用
parse\u format()
label\u parse()
有关,因为它在我之前对我有效。当我使用类似于您的代码时,如下所示:
ggplot(data=my_data,mapping=aes(x=x,y=y,color=z,shape=z))+geom_point()+geom_line()+scale_color_discrete(name=”“,labels=c(expression({}^{2}*“H”)、expression({}^{18}*“O”))+scale_shape_discrete(name=“、labels=c(expression({}^^{2}*“H”),表达式({}^{18}*“O”))
它仍然不起作用。我想它可能与表达式有关。
my_colors <- c("#00BFC4", "#F8766D")

ggplot(data = my_data,
       mapping = aes(x = x, y = y, color = z, shape = z)) +
  geom_point() +
  geom_line() +
  scale_color_manual(name = "", 
                     labels = parse_format(),
                     values = my_colors) +
  scale_shape_manual(name = "", 
                     labels = parse_format(),
                     values = c(16:17)) 
ggplot(data = my_data, mapping = aes(x = x, y = y, color = z, shape = z, group = z)) +            
  geom_point() +            
  geom_line() +    
  scale_color_discrete(name = "", labels = c(as.expression(bquote({ }^{2}*"H")), as.expression(bquote({ }^{18}*"O"))))+
  scale_shape_discrete(name = "", labels = c(as.expression(bquote({ }^{2}*"H")), as.expression(bquote({ }^{18}*"O"))))