如何在 R Shiny App 中使用自定义字体
How to use a custom font in an RShiny App
我想在我的 Rshiny 应用程序中加入自定义字体。我有一种预感,代码会放在 tags$style 中,但还没有包含它的实际代码。
示例代码:
ui <- fluidPage(
tags$style( ),
column(12,
dataTableOutput("testtab")
) # close column
) #close fluidpage
server <- function(input, output, session) {
output$testtab <-
DT::renderDataTable({
tab <- data.frame(a = 1:10, b = 11:20, c = 21:30)
dat.tab <- datatable(tab) %>% formatPercentage('a', 0) %>%
formatCurrency(1:ncol(tab), '$')
return(dat.tab)
}) # close renderDataTable
} # close server
shinyApp(ui=ui, server=server)
举个例子,假设我想在网络上使用任何自定义字体。
这应该有所帮助。
首先您需要从 http://www.fontspace.com/gunarta/surabanglus 下载字体并通过单击扩展名为 ttf
的文件并单击安装来安装它。这里我添加了标签来控制默认的正文字体,以及使用 "id tag" 的标签来控制特定控件中的字体和背景颜色。
还有其他方法可以使用单独的 CSS 文件等来完成此操作。但这既快速又简单,而且不太脏。
library(shiny)
library(dplyr)
library(DT)
ui <- fluidPage(
tags$style(HTML('body {font-family:"Times New Roman",Georgia,Serif; background-color:orange}')),
tags$style(HTML('#testtab {font-family:"surabanglus",Georgia,Serif; background-color:lightblue}')),
tags$style(HTML('#hello2 {font-family:"Courier",Georgia,Serif; background-color:pink}')),
column(12,
dataTableOutput("testtab"),
actionButton("hello1","Hello There (uses font inherited from body)"),
actionButton("hello2","Hello There again (uses Courier)")
) # close column,
) #close fluidpage
server <- function(input, output, session) {
output$testtab <- DT::renderDataTable({
tab <- data.frame(a = 1:10, b = 11:20, c = 21:30)
dat.tab <- datatable(tab) %>% formatPercentage('a', 0) %>%
formatCurrency(1:ncol(tab), '$')
return(dat.tab)
}) # close renderDataTable
} # close server
shinyApp(ui=ui, server=server)
产生这个:
我想在我的 Rshiny 应用程序中加入自定义字体。我有一种预感,代码会放在 tags$style 中,但还没有包含它的实际代码。
示例代码:
ui <- fluidPage(
tags$style( ),
column(12,
dataTableOutput("testtab")
) # close column
) #close fluidpage
server <- function(input, output, session) {
output$testtab <-
DT::renderDataTable({
tab <- data.frame(a = 1:10, b = 11:20, c = 21:30)
dat.tab <- datatable(tab) %>% formatPercentage('a', 0) %>%
formatCurrency(1:ncol(tab), '$')
return(dat.tab)
}) # close renderDataTable
} # close server
shinyApp(ui=ui, server=server)
举个例子,假设我想在网络上使用任何自定义字体。
这应该有所帮助。
首先您需要从 http://www.fontspace.com/gunarta/surabanglus 下载字体并通过单击扩展名为 ttf
的文件并单击安装来安装它。这里我添加了标签来控制默认的正文字体,以及使用 "id tag" 的标签来控制特定控件中的字体和背景颜色。
还有其他方法可以使用单独的 CSS 文件等来完成此操作。但这既快速又简单,而且不太脏。
library(shiny)
library(dplyr)
library(DT)
ui <- fluidPage(
tags$style(HTML('body {font-family:"Times New Roman",Georgia,Serif; background-color:orange}')),
tags$style(HTML('#testtab {font-family:"surabanglus",Georgia,Serif; background-color:lightblue}')),
tags$style(HTML('#hello2 {font-family:"Courier",Georgia,Serif; background-color:pink}')),
column(12,
dataTableOutput("testtab"),
actionButton("hello1","Hello There (uses font inherited from body)"),
actionButton("hello2","Hello There again (uses Courier)")
) # close column,
) #close fluidpage
server <- function(input, output, session) {
output$testtab <- DT::renderDataTable({
tab <- data.frame(a = 1:10, b = 11:20, c = 21:30)
dat.tab <- datatable(tab) %>% formatPercentage('a', 0) %>%
formatCurrency(1:ncol(tab), '$')
return(dat.tab)
}) # close renderDataTable
} # close server
shinyApp(ui=ui, server=server)
产生这个: