【发布时间】:2018-07-18 18:55:55
【问题描述】:
我正在尝试在具有特定高度和宽度尺寸以及特定字体大小/系列的闪亮应用中显示绘图,但是当它在应用中呈现时,png 的分辨率似乎非常低。如果我尝试更改 res 值,它会使绘图显示得更大(这不是我想要的)。有没有办法在不改变其大小的情况下增加绘图的分辨率/dpi?
最理想的情况是,我希望能够放大网页而不会使情节看起来模糊。这可以用png吗?我是否需要使用renderPlot 以外的其他内容来显示绘图?
library(shiny)
# Define UI for app that draws a histogram ----
ui <- fluidPage(
# App title ----
titlePanel("Hello Shiny!"),
mainPanel(
plotOutput(outputId = "Plot", width = "auto", height = "auto")
)
)
# Define server logic required to draw a histogram ----
server <- function(input, output, session) {
output$Plot <- renderPlot({
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width)) +
geom_point() +
theme(
line = element_line(
colour = "black",
size = 0.25
),
text = element_text(
family = "Helvetica",
size = 9,
colour = "black"
),
rect = element_blank(),
panel.grid = element_blank(),
legend.position = "top",
legend.title = element_text(
family = "Helvetica",
size = 9,
colour = "black"
),
legend.text = element_text(
family = "Helvetica",
size = 9,
colour = "black"
),
# axis.line = element_line(colour = "black", size = stroke),
axis.line.x = element_line(colour = "black", size = 0.25),
axis.line.y = element_line(colour = "black", size = 0.25),
axis.ticks.x = element_blank(),
axis.text.x = element_text(
family = "Helvetica",
size = 9,
colour = "black"
),
axis.text = element_text(
family = "Helvetica",
size = 9,
colour = "black"
),
plot.margin = margin(5, 5, 5, 5, "mm"),
legend.margin = margin(0, 0, 0, 0, "mm")
)
}, height = 200, width = 200)
}
shinyApp(ui, server)
【问题讨论】: