簡體   English   中英

使用 ggplot2 將標簽添加到行 plot

[英]Adding labels to a line plot with ggplot2

我正在嘗試在右側添加一個圖例來指示變量名稱。 在數據框中,這些行是名為“Correctional Spending”或“Medicaid Spending”的列,我希望顯示這些列。 有人可以幫忙嗎?

這是我的 plot:在此處輸入圖像描述

這是我的代碼:

ggplot(Alabama, aes(x=AlYear)) + 
  geom_line(aes(y = AlMed), color = "darkred") + 
  geom_line(aes(y = AlCorr), color="steelblue", linetype="twodash") +
  labs(title='Figure 3: Alabama Social Spending',
        x='Fiscal Year', y= 'Spending (in $100,000')

這是因為消費的類型(Coor 或 Med)實際上是一個變量,也就是說你要對color進行審美。 因此,您應該首先pivot_longer()數據,將它們保存在一列中,然后您應該將其作為變量包含在aes()中。 最后,由於顏色現在是一個變量,您可以在相應的比例中設置手動值。

library(tidyverse)
Alabama <- tibble(AlYear = 2010:2015,
                  AlMed = c(300,400,600,650,700,750),
                  AlCorr = c(400,400,450,500,450,450))

Alabama %>%
  pivot_longer(AlMed:AlCorr, names_to = "Spending Type") %>%
  ggplot(aes(x=AlYear, y = value, color= `Spending Type`)) + 
  geom_line() + 
  labs(title='Figure 3: Alabama Social Spending',
       x='Fiscal Year', y= 'Spending (in $100,000') +
  scale_color_manual(values=c("darkred", "steelblue"),
                     labels = c("Medicaid Spending","Correctional Spending"))

代表 package (v0.3.0) 於 2020 年 12 月 9 日創建

當然,您可以對線型做同樣的事情(在aes()調用中添加它,並在末尾添加一個scale_linetype_manual() )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM