R语言 ggplot面按列

fdbelqdn  于 2023-05-04  发布在  其他
关注(0)|答案(1)|浏览(190)

我在这里有这个数据集,想知道如何创建一个ggplotted图,其中x = year,y = market_book_ratio,return_on_capital,return_on_equity和return_on_assets。我知道有很多变量,所以我想把这些变量分面。理想情况下,我的图表将在x轴上显示年份,y值将是每个方面的每个变量,公司以不同的颜色显示。这在ggplot中可能吗?

我试过了

data %>% ggplot(aes(x = year, y = market_book_ratio, color = company)) +
         geom_line() +
         xlab("Year") +
         ylab("Market-To-Book Ratio") +
         facet_wrap(~.)
cbwuti44

cbwuti441#

上面给出的答案是有用的。不过我想重新写一个更完整的版本,也许你会发现它也有帮助。我将这4列视为描述

library(dplyr)
library(tidyr)

data_long <- data %>%
    gather(Description, value, market_book_ratio:return_on_assets)

Company_analysis <- ggplot(data_long, aes(x = year, y= value, 
                           fill = Description), xlab="") +
    geom_bar(stat="identity", width=.5, position = "dodge") +
    labs(title="Company Figures") +
    theme(axis.text.x = element_text(angle = 25, hjust = 1)) +
    facet_wrap(~company)

它看起来很好,但如果不是,那么您尝试将x=year更正为x=company,并将facet_wrap(~company)更正为facet_wrap(~year)
希望能帮上忙。

相关问题