R降价输出大小

时间:2016-04-05 08:40:02

标签: r shiny knitr r-markdown

我想生成一个带有交互式闪亮应用的R降价页面。它工作正常,但输出是一个非常小的区域与滚动条。我想摆脱滚动条并显示2个数字的全宽和高度没有滚动条。我怎样才能做到这一点?

我已经尝试过了:

options(width = 800)

目前它看起来像这样: enter image description here

    ---
title: "Spielercluster"
output: html_document
runtime: shiny
---
```{r,echo=FALSE}
library(ggplot2)
library(shiny)

data<-read.csv2('data.csv',header=T,sep=",") 
rawData<-read.csv2('rawData.csv',header=T,sep=",")
cluster<-read.csv2('cluster.csv',header=T,sep=",")
colors<-c("green","red","black")

ui<-fluidPage(plotOutput("plot1", hover = "plot_hover"),
              plotOutput("plot2", hover = "plot_hover"),
              verbatimTextOutput("info")
)

server <- function(input, output) {

  output$plot1 <- renderPlot({
ggplot(rawData, aes(koerpergewicht, groesse, color =  factor(data$gruppe))) +
          geom_point() + labs(title = paste(nlevels(factor(colors))))+geom_point(size=8)+geom_text(aes(label=position),vjust=-1.5)+scale_color_manual(name = "Gruppe",
  labels = c("1 schwer", "2 leicht","3 Zwischengruppe"),
  values = c(rgb(0.9725490196078431,0.4627450980392157,0.4274509803921569,1),rgb(0,0.7294117647058824,0.2196078431372549,1),rgb(0.3803921568627451,0.6117647058823529,1,1)))+ggtitle("Original")
  })

  output$plot2 <- renderPlot({
ggplot(rawData, aes(koerpergewicht, groesse, color =  factor(cluster$x))) +
          geom_point() + labs(title = paste(nlevels(factor(colors))))+geom_point(size=8)+geom_text(aes(label=position),vjust=-1.5)+scale_color_manual(name = "Gruppe",
  labels = c("1 schwer", "2 leicht","3 Zwischengruppe"),
  values = c(rgb(0.9725490196078431,0.4627450980392157,0.4274509803921569,1),rgb(0,0.7294117647058824,0.2196078431372549,1),rgb(0.3803921568627451,0.6117647058823529,1,1)))+ggtitle("Berechnet")
  })


  output$info <- renderPrint({
    nearPoints(rawData, input$plot_hover, , threshold = 10, maxpoints = 1,
               addDist = TRUE)
  })
}

shinyApp(ui, server)
```

5 个答案:

答案 0 :(得分:4)

我通过添加自己的css文件来实现它。你可以这样包括它:

---
title: "Spielercluster"
output:
  html_document:
    css: style.css
runtime: shiny
---

然后你必须调整类有光泽的框架

的大小
.shiny-frame{
  width: 1400px;
  height: 1200px;
}

答案 1 :(得分:1)

shinyApp(ui, server, options = list(height = 1000)

  

注意使用height参数来确定垂直空间的大小   嵌入式应用程序应该占用。 (http://rmarkdown.rstudio.com/authoring_embedded_shiny.html

答案 2 :(得分:0)

当把闪亮变成Markdown文件时,我认为你应该删除服务器和UI功能,因为这不是一个常规的rmarkdown文件,然后它会显示整个闪亮的图形。我通过这种方式解决了这个问题。 你可以将光泽变成这种形态。

这是一个链接:change shiny format into rmarkdown

答案 3 :(得分:0)

我使用的是R Shiny Server Pro 1.5.11.994和CentO 7.5。

使用服务器options,图形尺寸(例如fig.widthfig.fullwidth)和绘图尺寸后,最终对我有用的是CSS。

这是我的降价文件的顶部:

---
output:
  html_document:
    css: my_styles.css
---

,然后在my_styles.css中:

div.main-container {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.shiny-frame {
  height: 800px;
}

答案 4 :(得分:-2)

全局设置

knitr::opts_chunk$set(fig.width = 12, fig.height=8)

或每个输出的本地

```{r,echo=FALSE, fig.width = 12, fig.height=8}

应该有效。