如何在 ggplot2 中绘制两条线(附示例)
您可以使用以下基本语法使用ggplot2在图表中绘制两条线:
ggplot(df, aes (x = x_variable)) + geom_line( aes (y=line1, color=' line1 ')) + geom_line( aes (y=line2, color=' line2 '))
以下示例展示了如何在实践中使用此语法。
示例 1:ggplot2 中包含两条线的基本图
假设我们在 R 中有以下数据框:
#create data frame df <- data. frame (day = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), sales = c(8, 8, 7, 6, 7, 8, 9, 12, 14, 18), customers = c(4, 6, 6, 4, 6, 7, 8, 9, 12, 13)) #view first six rows of data frame head(df) day sales customers 1 1 8 4 2 2 8 6 3 3 7 6 4 4 6 4 5 5 7 6 6 6 8 7
以下代码展示了如何在 ggplot2 中创建一个基本绘图,其中用两行来表示这 10 天期间的总销售额和客户数:
library (ggplot2) #create plot with two lines ggplot(df, aes (x = day)) + geom_line( aes (y=sales, color=' sales ')) + geom_line( aes (y=customers, color=' customers '))
x 轴显示日期,y 轴显示每天的销售额和客户价值。
示例 2:ggplot2 中包含两条线的自定义绘图
以下代码演示了如何使用自定义标题、标签、颜色、线宽和主题创建与上一个示例相同的绘图:
library (ggplot2)
ggplot(df, aes (x = day)) +
geom_line( aes (y=sales, color=' sales '), lwd= 2 ) +
geom_line( aes (y = customers, color = ' customers '), lwd= 2 ) +
scale_color_manual(' Metric ', values=c(' red ', ' steelblue ')) +
labs(title = ' Sales & Customers by Day ', x = ' Day ', y = ' Amount ') +
theme_minimal()
请注意,我们选择对此图使用theme_minimal() ,但您可以在绘图中使用多种主题。请参阅本指南以获取 ggplot2 主题的完整列表。
其他资源
以下教程解释了如何在 ggplot2 中使用线条执行其他常见绘图功能: