R 在同一个绘图上绘制三条线的ggplot的最佳方法是什么?
我正在尝试使用ggplot2绘制以下数据的绘图:R 在同一个绘图上绘制三条线的ggplot的最佳方法是什么?,r,ggplot2,R,Ggplot2,我正在尝试使用ggplot2绘制以下数据的绘图: Response Type Size <dbl> <chr> <chr> 12 SoilYieldMapping 0-600 34 SoilYieldMapping 600-1,000 39 SoilYieldMapping 1,000-1,300 50 SoilYiel
Response Type Size
<dbl> <chr> <chr>
12 SoilYieldMapping 0-600
34 SoilYieldMapping 600-1,000
39 SoilYieldMapping 1,000-1,300
50 SoilYieldMapping 1,300-1,700
54 SoilYieldMapping 1,700-2,200
49 SoilYieldMapping 2,200-2,900
67 SoilYieldMapping 2,900-3,800
80 SoilYieldMapping 3,800+
12 GuidanceSystem 0-600
24 GuidanceSystem 600-1,000
33 GuidanceSystem 1,000-1,300
40 GuidanceSystem 1,300-1,700
60 GuidanceSystem 1,700-2,200
60 GuidanceSystem 2,200-2,900
78 GuidanceSystem 2,900-3,800
84 GuidanceSystem 3,800+
12 VariableRateTechnology 0-600
20 VariableRateTechnology 600-1,000
18 VariableRateTechnology 1,000-1,300
23 VariableRateTechnology 1,300-1,700
32 VariableRateTechnology 1,700-2,200
32 VariableRateTechnology 2,200-2,900
29 VariableRateTechnology 2,900-3,800
40 VariableRateTechnology 3,800+
响应类型大小
12土场地图0-600
34土场地图600-1000
39土场地图1000-1300
50土场地图1300-1700
54土场地图1700-2200
49土场地图2200-2900
67土场地图2900-3800
80土场地图3800+
12制导系统0-600
24制导系统600-1000
33制导系统1000-1300
40制导系统1300-1700
60制导系统1700-2200
60制导系统2200-2900
78制导系统2900-3800
84制导系统3800+
12可变速率技术0-600
20可变速率技术600-1000
18可变速率技术1000-1300
23可变速率技术1300-1700
32可变速率技术1700-2200
32可变速率技术2200-2900
29可变速率技术2900-3800
40可变速率技术3800+
我想要x轴上农场大小的8个类别,y轴上的响应,以及三种类型中每种类型的不同颜色线
但是,当我尝试绘制时,会得到以下错误代码:
geom_路径:每组仅由一个观测值组成。您是否需要调整团队美学
这是我的ggplot2代码:
plot <- ggplot(data=data,aes(x=Size,y=Response,color=(Type))) +
geom_line() +
theme_grey(base_size = 22) +
ylim(0,100) +
ggtitle("Percent Adoption of Precision Ag for Corn in the US") +
ylab("Percent of Farms Who Use Each Technology") +
xlab("Farm Size")
plot如果您想在y轴上显示响应,我建议您在aes()
语句中用y=Response
替换y=Size
。这只是一个输入错误,谢谢您指出。当我这样做时,绘图看起来是正确的,但上面没有数据。我更新了它给我的错误。每个农场规模类别都应该为每个类型提供一条数据,我希望随着农场规模的增加,这些数据形成3行。你知道我如何做到这一点吗?试着将addgroup=Type
添加到aes
中,这就解决了问题,谢谢!