简体   繁体   English

如何在ggtern中使用geom_polygon正确填充颜色?

[英]How to fill colors correctly using geom_polygon in ggtern?

Here is the code which I am using to create boundaries in my ternary diagram: 这是我用来在三元图中创建边界的代码:

library(ggtern)
DATA <- data.frame(x = c(0,0,0.04),
               y = c(1,0.6,0.575),
               z = c(0,0.4,0.385),
               xend = c(0.4,0.21,0.1),
               yend = c(0.0,0.475,0),
               zend = c(0.6,0.315,0.9),
               Series = c("yz","xz","xy"))
ggtern(data=DATA,aes(x,y,z,xend=xend,yend=yend,zend=zend)) + 
geom_segment(aes(color=Series),size=1) +
scale_color_manual(values=c("darkgreen","darkblue","darkred")) +
theme_bw() + theme_nogrid() + 
theme(legend.position=c(0,1),legend.justification=c(0,1)) + 
labs(title = "Sample Midpoint Segments")

And this code produces the following diagram. 此代码生成以下图表。

点击此处查看图

I want to fill different colours in each section. 我想在每个部分填充不同的颜色。 This figure is divided into 4 sections. 这个数字分为4个部分。 Could you kindly tell me how to fill different colours in each sections using geom_polygon function or any other function? 你能告诉我如何使用geom_polygon函数或任何其他函数在每个部分填充不同的颜色吗?

Try this: 试试这个:

g <- data.frame(y=c(1,0,0),
                x=c(0,1,.4),
                z=c(0,0,.6),         Series="Green")

p <- data.frame(y=c(1,0.475,0.6),
                x=c(0,0.210,0),
                z=c(0,0.315,.4),         Series="Red")

q <- data.frame(y=c(0.575,0.475,0.0,0.0),
                x=c(0.040,0.210,0.4,0.1),
                z=c(0.385,0.315,0.6,0.9),         Series="Yellow")

f <- data.frame(y=c(0.6,0.575,0.0,0.0),
                x=c(0.0,0.040,0.1,0.0),
                z=c(0.4,0.385,0.9,1.0),         Series="Blue")

DATA = rbind(g, p, q, f)
ggtern(data=DATA,aes(x,y,z)) + 
  geom_polygon(aes(fill=Series),alpha=.5,color="black",size=0.25) +
  scale_fill_manual(values=as.character(unique(DATA$Series))) +
  theme(legend.position=c(0,1),legend.justification=c(0,1)) + 
  labs(fill="Region",title="Sample Filled Regions")

在此输入图像描述

你试过geom_polygon(aes(fill=col), alpha=0.5)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM