我正在使用以下代码在R中进行ggplot:
s=40
ggplot(data = NULL) +
geom_line(data = stk, aes(x = date, y = price)) +
geom_line(data = gdp, aes(x = year, y = gdp1*s)) +
scale_y_continuous("Index of Total Stock Price",
sec.axis = sec_axis(~. /s, name = "Real GDP (trillions of USD in 2012)"),
limits = c(0, 100)) +
scale_x_date(breaks = seq(from = as.Date("1900-01-01"),
to = as.Date("1945-01-01"),
by = "5 years"),
labels=date_format("%Y")) +
xlab(element_blank())
此输出:
问题在于,辅助轴上的文本和刻度线看起来非常局促。如何使两个y轴标签的刻度和轴标签之间的间距相同?谢谢。
编辑:
以下是可重现的数据:
set.seed(1000)
df1 <- data.frame(y1=rnorm(100, 0, 1),
x=seq(1, 100, 1))
df2 <- data.frame(y2=rnorm(100, 0, 1),
x=seq(1, 100, 1))
ggplot(data = NULL) +
geom_line(data = df1, aes(x = x, y = y1)) +
geom_line(data = df2, aes(x = x, y = y2*2)) +
scale_y_continuous("Label of Primary Y Axis",
sec.axis = sec_axis(~. *2, name = "Label of Secondary Y Axis"))
答案 0 :(得分:1)
我遇到了同样的问题,使用第二部分,
theme(axis.title.y.right = element_text(margin = margin(t = 0, r = 0, b = 0, l = 10))
为我工作。