ggplot facet by column

时间:2017-12-04 03:28:22

标签: r ggplot2

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

enter image description here

我试过了:

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

1 个答案:

答案 0 :(得分:1)

上面给出的答案很有用。但我想改写一个更完整的版本,也许你会觉得它也很有帮助。我将4列视为描述

library(dplyr)
library(tidy)
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)

希望它有所帮助。