gpt4 book ai didi

r - 结合两个具有不同数据点的散点图

转载 作者:行者123 更新时间:2023-12-03 12:10:50 24 4
gpt4 key购买 nike

我有一个要求,我想在同一个绘图区域中组合两个不同的散点图。一个散点图使用度量 1,另一个散点图使用度量 2。
在 R 中可行吗?
我已经添加了数据集以及代码。但不确定如何在同一个情节中合并这两个。

df1 <- data.frame(Product = c("A","B","C"),
ProductMetric = c("85","90","92"),
CategoryMetric = c("83"),
Category = c("AAA"))
df1
ggplot(data=df1, mapping= aes(x=Category,y= ProductMetric))+ geom_point(size=5)+
ggplot(data=df1, mapping= aes(x=Category,y= CategoryMetric))+ geom_point(size=5)

所以基本上在组合结果之后,同一个图表中应该有 4 个圆圈,基本上我想在同一个图表中用圆圈显示 Product Avg 和 Category Avg,以便最终用户可以通过查看来比较产品平均值和类别平均值图表。

问候,
阿卡什

最佳答案

您只需要从 wide 转换您的数据至 long格式使用 gather来自 tidyr包裹。阅读更多 here

library(dplyr)  
library(tidyr)
library(ggplot2)

df1 <- data.frame(Product = c("A","B","C"),
ProductMetric = c("85","90","92"),
CategoryMetric = c("83"),
Category = c("AAA"))
df1

#> Product ProductMetric CategoryMetric Category
#> 1 A 85 83 AAA
#> 2 B 90 83 AAA
#> 3 C 92 83 AAA

df1_long <- df1 %>%
gather(key, value, -Category, -Product)
df1_long

#> Product Category key value
#> 1 A AAA ProductMetric 85
#> 2 B AAA ProductMetric 90
#> 3 C AAA ProductMetric 92
#> 4 A AAA CategoryMetric 83
#> 5 B AAA CategoryMetric 83
#> 6 C AAA CategoryMetric 83

ggplot(df1_long, aes(x = Category, y = value, color = key)) + geom_point(size = 5)



编辑:保留 Category Ave颜色 red同时更改每个 Product 的颜色和图例动态取决于产品的数量。

myCol <- c(RColorBrewer::brewer.pal(length(unique(df1$Product)), "Set2"), "red")

ggplot(df1, aes(x = Product, y = ProductMetric, color = Product)) + geom_point(size = 5) +
geom_point(data = df1, aes(y = CategoryMetric, color = "Category Ave"), size = 5) +
scale_color_manual("Legend",
labels = c(paste0("Product ", df1$Product), "Category Ave"),
values = myCol)



ggplot(df1, aes(x = Category, y = ProductMetric, color = Product)) + geom_point(size = 5) +
geom_point(data = df1, aes(y = CategoryMetric, color = "Category Ave"), size = 5) +
scale_color_manual("Legend",
labels = c(paste0("Product ", df1$Product), "Category Ave"),
values = myCol)



创建于 2018-03-31 由 reprex package (v0.2.0)。

关于r - 结合两个具有不同数据点的散点图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49595310/

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