首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将刻度和标签居中放置在条形GGplot的中间

将刻度和标签居中放置在条形GGplot的中间
EN

Stack Overflow用户
提问于 2019-02-09 04:04:29
回答 1查看 903关注 0票数 0

我在ggplot中创建了一个条形图,但是,我似乎无法将标签和刻度置于条形图的中心。相反,标签在右边。我试过了,但没有用。

以下是图表的外观:

为了清楚起见,我希望2019-01的标签和轴直接位于红色条的中心,一直到右边。

下面是创建图表的代码:

代码语言:javascript
复制
ggplot(data = earnings_returns, aes(x=date, y=return, fill=factor(sign(return)))) +
  geom_col(show.legend = FALSE) +
  ggtitle(paste(ticker, 'Returns', 5, 'Day(s) After Announcement'))+
  scale_fill_brewer(palette="Set1")  + 
  theme(axis.text.x = element_text(angle = 90))

以及用于创建数据帧的代码:

代码语言:javascript
复制
earnings_returns <- structure(list(date = structure(c(17836, 17743, 17652, 17563, 
17472, 17379, 17288, 17197, 17099), class = "Date"), time = c(" AC", 
" AC", " AC", " AC", " AC", " AC", " AC", " AC", " AC"), ticker = c("AAPL", 
"AAPL", "AAPL", "AAPL", "AAPL", "AAPL", "AAPL", "AAPL", "AAPL"
), price.close = c(222.220001, 190.289993, 169.100006, 167.779999, 
168.110001, 150.050003, 147.509995, 121.349998, 118.25), return = c(-0.0617855995779606, 
0.0883914478886969, 0.100236525124665, -0.0752771788966337, 0.0462197605959207, 
0.0668443772040446, 0.0439292944183205, 0.083889585230978, -0.0571670359408034
)), row.names = c(NA, -9L), class = "data.frame")

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-02-09 04:17:40

我想通了,这是使用日期的问题。将它们更改为factor修复了该问题:

代码语言:javascript
复制
ggplot(data = earnings_returns, aes(x=factor(date), y=return, fill=factor(sign(return)))) +
  geom_col(show.legend = FALSE) +
  ggtitle(paste(ticker, 'Returns', 5, 'Day(s) After Announcement'))+
  scale_fill_brewer(palette="Set1")  + 
  theme(plot.title = element_text(hjust = 0.5), 
        axis.text.x = element_text(angle = 90))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54599443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档