Обновление от комментариев.
Существует несколько подходов для этого; используя facet_
, как предлагает Axeman, создать полосу над графиком (проще изменить формат полосы, чем полоса заголовка), или вы можете создать полосу заголовка вручную, а затем приклеить ее к сюжету.
Пример
library(ggplot2)
library(gridExtra)
library(grid)
# Create dummy variable to facet on: this name will appear in the strip
mtcars$tempvar <- "Market Updates"
# Basic plot
# Manually added legend to match your expected result
p <- ggplot(mtcars, aes(mpg, wt)) +
geom_line(aes(colour="Com")) +
scale_colour_manual(name="", values=c(Com = "#228b22")) +
labs(x = "Date", y = "High")
Использование facet_
: это только добавляет цветную полосу через панель сюжета, хотя название по центру.
p + facet_grid(. ~ tempvar) +
theme(strip.background = element_rect(fill="#228b22"),
strip.text = element_text(size=15, colour="white"))
Который производит

Использование grid
функции: это добавляет цветную полосу через панель сюжета, но название сосредоточено на графическом окне. (Вы могли бы получить немного больше контроля с позиционированием, добавив его к сюжету gtable
)
my_g <- grobTree(rectGrob(gp=gpar(fill="#228b22")),
textGrob("Market Updates", x=0.5, hjust=0.5,
gp=gpar(col="white", cex=1.5)))
grid.arrange(my_g, p, heights=c(1,9))
который производит

Это будет, вероятно, будет проще всего сделать один фасет сюжет, и изменение фон полосы. – Axeman