我已经尝试创建一个Rshiny,展示从候选人到客户的合理数据。该应用程序本身工作良好,但我肯定需要包括一个密码保护,以充分填充数据保护指南。你能帮帮我吗?
我已经尝试了以下资源:
> library(shinymanager) Fehler: package or namespace load failed for ‘shinymanager’ in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]): Namensraum ‘rlang’ 0.4.1 ist bereits geladen, aber >= 0.4.2 wird gefordert
,mean?。
这很令人沮丧而且我们的客户已经在等着..。
下面是我用来创建应用程序的代码:
服务器。R:
library(shiny)
library(data.table)
library(DT)
library(ggpubr)
library(ggrepel)
library(ggplot2)
# create random data
Total <- rnorm(10, 30, 5)
Yrs <- rnorm(10, 10, 7)
Level <-c("Senior Project Manager", "PM (Border Senior PM)",
"Project Manager", "Senior Project Manager","PM (Border Senior PM)",
"PM (Border Senior PM)","Project Manager","Project Manager",
"Project Manager","Senior Project Manager")
Modality <- c("Small Molecules", "Biologics",
"Both","Both","Both","Biologics","Small Molecules","Small Molecules",
"Biologics","Biologics")
ID <- 1:10
pm <- data.frame(ID,Modality,Level,Yrs,Total)
server <- function(input, output) {
# # choose columns to display
output$mytable1 <- DT::renderDataTable({
# delete ID column
pm$ID <-NULL
DT::datatable(pm[, input$show_vars, drop = FALSE])
if (input$Level != 'Not Relevant') {
pm <-pm[ which(pm$Level==as.character(input$Level)),]
}
else {
pm <- pm}
if (input$Modality != 'Not Relevant') {
pm <-pm[ which(pm$Modality==as.character(input$Modality)),]
}
else
{
pm
}
})
#create scatterplot
output$scatter <- renderPlot({
pm$Level <- factor(pm$Level, levels = c("Senior Project Manager", "PM (Border Senior PM)",
"Project Manager"))
pm$Modality <- factor(pm$Modality, levels = c("Small Molecules", "Biologics",
"Both"))
temp <-ggplot(data=pm, aes(x=Total, y=Yrs, label = ID)) +
geom_point(size = 13,aes(color = Level, shape = Modality),
alpha = 0.5)+
theme(axis.text.y=element_blank())+
scale_y_continuous(expand = c(0,0),limits=c(1,20))+
scale_x_continuous(expand = c(0,0),limits=c(20,36), breaks = c(20,25,30,35))+
ylab("Years of Experience")+
xlab("Total Competency Score")+
scale_color_manual(values = c("#00CCCC", "#CC0099", "#3366FF"))+
scale_shape_manual(values = c(17,19, 15)) +
theme(legend.text = element_text(size = 13),
legend.title = element_text(size = 12))+
ggtitle("Project Manager Ranking", subtitle = "Competency by Years of Experience")+
theme_classic(base_size = 12)
temp+ geom_label_repel(size = 3.5,point.padding = NA)
})
}
ui.R:
ui <- fluidPage(
# title = "Looking for the right candidate for your business?",
titlePanel("Wave 1 - Talent Pipelining"),
setBackgroundColor(
color = c("lightseagreen", "ghostwhite"),
gradient = "linear",
direction = "top"),
sidebarLayout(
sidebarPanel(
### if one of the competencies are selected, they can be sorted by descending order on the table itself
#img(src = "logo.jpg", height = 292, width = 560),
conditionalPanel(
'input.dataset === "Talent Ranking"',
# checkboxGroupInput("show_vars", "Columns in dataset to show:",
# names(pm), selected = names(pm)),
selectInput("Level", "Choose Level of Expertise:",
choices = c("Not Relevant",
"Senior Project Manager" ,"PM (Border Senior PM)", "Project Manager")),
selectInput("Modality", "Choose Modality:",
choices = c("Not Relevant","Both","Biologics", "Small Molecules"))
),
### create a new tab to show venn diagramm and scatterplot
conditionalPanel(
'input.dataset === "Level vs Competency"',
helpText("This scatterplot shows each candidates overall competency score (X-axis) and their respective years of experience (Y-axis)
within their respective fields. Shapes reflect modalities and colours show level of expertise.")
)
),
# Show a summary of the dataset and an HTML table with the requested
# number of observations
mainPanel(
tabsetPanel(
id = 'dataset',
tabPanel("Talent Ranking", DT::dataTableOutput("mytable1")),
tabPanel("Level vs Competency", plotOutput("scatter"))
)
)
)
)
发布于 2020-02-13 00:53:14
通常,这类软件是通过客户端组件如citrix接收器来访问的。它具有灵活性,可以从许多不同的计算机和移动平台访问远程桌面。如果通过citrix提供对provided或任何其他软件的访问,您就可以解决IT安全问题。因为要登录citrix,您需要多个身份验证密码,这就提供了更安全的环境。
https://stackoverflow.com/questions/60203621
复制相似问题