ggplot:定义 sexond 轴更改第一个轴的格式
我使用 ggplot2
绘制了这样的日期:
df <- data.frame(date= sample(seq(from=as.Date("2015-01-01"),length.out=100,by="day")))
my_plot <- ggplot(df, aes(date)) +
geom_density()
my_plot
这看起来符合预期。但是,一旦我定义了 sexond 轴,第一个更改的格式:
my_plot +
scale_x_continuous(sec.axis = sec_axis(~ . , name = "test", breaks = NULL, labels = NULL))
在此示例中,第二个轴可以替换为 labs(title= "test")
。这只是一个最小的可重现示例。无论我们如何定义第二个轴,第一个 x 轴不再显示月份,而是显示数字。如何在不更改第一个轴的格式的情况下定义第二个轴?
I make a plot using ggplot2
with dates like this:
df <- data.frame(date= sample(seq(from=as.Date("2015-01-01"),length.out=100,by="day")))
my_plot <- ggplot(df, aes(date)) +
geom_density()
my_plot
This looks as expected. But as soon as I define a sexond axis the format of the first changes:
my_plot +
scale_x_continuous(sec.axis = sec_axis(~ . , name = "test", breaks = NULL, labels = NULL))
In this example the second axis could be replaced with labs(title= "test")
. It is just a minimal reproducible example. No matter how we define the second axis the first x axis does not show month anymore but numbers instead. How can I define a second axis without changing the format of the first?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
导致问题的不是第二个轴,而是您指定的是
scale_x_continuous
而不是scale_x_date
:It's not the second axis that causes the problem, it's that you are specifying
scale_x_continuous
instead ofscale_x_date
: