gpt4 book ai didi

r - 使用ggplot2在散点图中用线连接点

转载 作者:行者123 更新时间:2023-12-01 11:33:12 26 4
gpt4 key购买 nike

我有一个散点图,它按类别将点分成不同的颜色。我希望这些类别之一有一条线连接点以突出显示该类别的数据。我无法弄清楚这一点......

Round <- read.csv("http://goo.gl/3c3vBU") # Data

qplot(factor(Round), Opp.Landed, data=floyd, color=Opponent, size=Opp.Percent.Landed, alpha = I(0.7)) +
labs(x="Round", y="Punches Landed", title="Opponent Punches Landed / Percentage", colour="Boxer", size="Connect Percentage") +
scale_linetype_manual(values=1:2, labels=c("Boxer", "Connect Percentage")) +
guides(colour = guide_legend(override.aes = list(size=5)))

ftheme 代码只是颜色和格式。有任何想法吗?我试过添加 geom_line(aes(linetype=floyd[Opponent="Manny Pacquiao"]), size=1) 但它出错了

Error in [.data.frame`(floyd, Opponent = "Manny Pacquiao") :    unused argument (Opponent = "Manny Pacquiao")

编辑:我更新了上面的代码以排除 ftheme,因此它是可重现的。请查看三个类别的示例数据集。我只希望其中任何一个具有连接点:http://goo.gl/3c3vBU

最佳答案

如果不能在您的数据样本上运行您的代码,我无法给出量身定制的答案,但您可以使用 scale_color_manual 设置要突出显示的类别的颜色,例如,“红色”并将所有其他设置为 NA。例如,如果您要突出显示的类别是第二个类别,并且您总共有五个类别,则将此添加到您的绘图代码中:

scale_colour_manual(values=c(NA, "red", rep(NA,3)))

如果您也有与颜色美学相关的点,那么您需要将这些点更改为填充美学(例如,fill=Opponent)并使用填充点标记您可以使用 shapepch 手动设置。否则,您的点标记将与线条一起消失。标记编号 21 到 25 已填充(有关点标记的更多信息,请参见 ?pch)。

更新:这是我使用您提供的数据的尝试。我不太确定您希望图例和其他细节看起来如何,所以请告诉我这是否可行。我已经切换到 ggplot,因为我不知道 qplot 的来龙去脉。

ggplot(floyd, aes(factor(Round), Opp.Landed, color=Opponent, 
fill=Opponent, group=Opponent, size=Opp.Percent.Landed),
alpha = 0.7, pch=21) +
geom_point(pch=21, colour=NA) +
geom_line() +
labs(x="Round", y="Punches Landed", title="Opponent Punches Landed / Percentage",
colour="Boxer", size="Connect Percentage") +
scale_linetype_manual(values=1:2, labels=c("Boxer", "Connect Percentage")) +
scale_colour_manual(values=c(hcl(15,100,65), NA, NA), guide="none") +
guides(fill = guide_legend(override.aes = list(size=5)))

enter image description here

关于r - 使用ggplot2在散点图中用线连接点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30471612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com