我的数据基本上是这样的:
read.table("table.txt", header = TRUE) -> tbl
require(ggplot2)
tbl$Populations2 <- factor(tbl$Populations, as.character(tbl$Populations))
#pdf(file="table.pdf", width=11)
ggplot(tbl, aes(y = Populations2, x = alpha, xmin = alpha -
SE, xmax = alpha + SE, label = Populations2, colour =
color)) + geom_point(colour = "black") + geom_text(hjust = 1.2) +
theme_classic() + theme(axis.title = element_blank(), axis.ticks =
element_blank(), axis.text.y = element_blank(), legend.position =
"none") + geom_errorbarh(height = .1)
#dev.off()
和我正在使用误差线绘制点估计值。我很难让ggplot2读取我的颜色。
types: ['geocode']
当我运行代码时,输入中列出的相同颜色的弹出窗口颜色相同,但它们不会成为我想要的颜色。我用引号中的颜色以及十六进制中列出的颜色尝试了这个,但我得到了同样的问题。知道如何解决这个问题吗?
答案 0 :(得分:1)
这个怎么样?
我仍然是R(和SO)的新手但是afaik aes(colour=xxx)
没有设置实际颜色,它确定要应用的scale_color_xxx
。您似乎希望颜色随每个Populations2
而变化,因此如果有意义的话,请更改颜色系列。
对不起,还没有足够的代表来发布我得到的输出图像。
txt <- "Populations alpha SE Z sample color
Pop1 0.029000 0.003589 8.116 9 red
Pop2 0.031868 0.003498 8.231 9 red
Pop3 0.028969 0.003765 7.942 8 blue
Pop4 0.030651 0.003479 8.792 10 green"
tbl <- read.table(text = txt, header = TRUE)
require(ggplot2)
tbl$Populations2 <- factor(tbl$Populations, as.character(tbl$Populations))
ggplot(tbl, aes(y = Populations2,
x = alpha,
xmin = alpha - SE,
xmax = alpha + SE,
label = Populations2,
colour = Populations2
)) +
geom_point(colour = "black") +
geom_text(hjust = 1.2) +
theme_classic() +
theme(axis.title = element_blank(),
axis.ticks = element_blank(),
axis.text.y = element_blank(),
legend.position = "none") +
geom_errorbarh(height = .1) +
scale_color_manual(values = as.character(tbl$color))