我有一张公司 Assets 演变的图表,我想画一个与牛轴平行的水平剖面图,从 300000 到 400000,这应该表明该指标的最佳值(利益相关者想要什么) 和线(图形本身)应该在该部分上方,以便立即查看特定时间的值是否合适。
#date_a
An AI AC AT
2011 147198 292282 439480
2012 164660 175440 340100
2013 153755 202013 355768
2014 141857 242317 384174
2015 137748 270366 408114
2016 129087 397289 526376
#in ui.r
fluidRow(
width="100%",
column(4,plotOutput(outputId = "act", height = 100))
),
#in server.r
output$act<- renderPlot({
ggplot(date_a, aes(date_a$An, date_a$AT)) +
geom_line(aes(group=1), colour="#000000") +
geom_point(size=3, colour="#FF0000")+
labs(x = "An", y = "Active(lei)") +
ggtitle("Evolutia activelor totale")
})
最佳答案
首先,这似乎与shiny
没有任何关系。您的问题与 ggplot2
有关。将您的问题归结为问题的真正原因将有助于您更快地获得帮助。此外,正如我在评论中提到的,在 ggplot
内的 aes
调用中,您不应将 data_a$
放在列前面名字。
话虽如此,如果您想要填充从 y = 300,000 到 y = 400,000 的整个区域,那么您可以使用 geom_ribbon
,如下所示:
ggplot(data_a, aes(An, AT)) +
geom_line(aes(group=1), colour="#000000") +
geom_point(size=3, colour="#FF0000")+
labs(x = "An", y = "Active(lei)") +
ggtitle("Evolutia activelor totale") +
geom_ribbon(aes(ymin = 300000, ymax = 400000), alpha = 0.2, fill = "blue")
这会给你这个:
您可以更改 alpha
和 fill
的值以使该区域看起来像您想要的那样。
如果您只想在 300,000 和 400,000 处设置两条水平线,那么您可以这样做:
ggplot(data_a, aes(An, AT)) +
geom_line(aes(group=1), colour="#000000") +
geom_point(size=3, colour="#FF0000")+
labs(x = "An", y = "Active(lei)") +
ggtitle("Evolutia activelor totale") +
geom_hline(aes(yintercept = 300000)) +
geom_hline(aes(yintercept = 400000))
这会给你这个:
关于R Shiny 横款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46895844/