如果能够动态地进行交互,查询数据通常会更容易。与包闪亮的
而且shinydashboard
为此目的创建一个交互式仪表板很简单。在这里,我们将使用存储在pbmc_small
修拉
对象(该对象可以在修拉
包)。
首先,我们创建了一个六边形单元表示,并制作了一个数据帧来存储集群标签的位置。
现在,创建一个简单的、闪亮的仪表盘非常容易,它允许您可视化数据集中每个基因的基因表达。运行函数后,通过运行初始化应用程序应用程序
。
应用< -shinyApp(服务器=函数(输入、输出){输出美元all_genes < -renderUI({selectInput(inputId =“基因”,标签=“基因”,选择=rownames(pbmc_small))})输出美元plot1 < -renderPlot({plot_hexbin_meta(pbmc_small“RNA_snn_res.0.8”,action =“大多数”,title =“集群”)+指南(填补=假)+ggrepel::geom_label_repel(data =df_label,aes(x =x,y =y,标签=标签),颜色=“黑色”,label.size =NA,填补=NA)})输出美元plot2 < -renderPlot({plot_hexbin_feature(pbmc_small类型=输入美元类型,特点=输入美元的基因,action =输入美元行动,title =输入美元基因)})},ui =dashboardPage(皮肤=“紫色”,dashboardHeader(),dashboardSidebar(uiOutput(“all_genes”),radioButtons(“类型”,”类型的表情:“,c(“原始”=“计数”,“归一化”=“数据”)),radioButtons(“行动”,“使用:总结”,c(“比例不是0”=“prop_0”,“的意思是”=“的意思是”,“中值”=“中值”))),dashboardBody(fluidRow(盒子(plotOutput(“plot1”,宽度=450,身高=400),宽度=6),盒子(plotOutput(“plot2”,宽度=500,身高=400),宽度=6)))))
的iSEE包提供另一种生成交互式会话的方法,以便在web浏览器中查询数据。方法的对象上工作的自定义函数SummerizedExperiment
类。的SingleCellExperiment
类继承该类的所有特性,因此可以使用。
pbmc_small < -作为。SingleCellExperiment(pbmc_small)pbmc_small < -make_hexbin(pbmc_smallnbins =10,dimension_reduction =“主成分分析”)
plot_hexbin_gene_new < -函数(预计,行=零,rownames =字符(0),列=零,类型=“logcounts”,action =“prop_0”) {plot_hexbin_feature(预计,类型=类型,特点=rownames,action =动作)}
现在只需使用以下命令告诉iSEE关于schex的信息。运行函数后,通过运行初始化应用程序应用程序
。
schex_plot_gene < -customDataPlotDefaults(pbmc_small1)schex_plot_gene美元函数< -“plot_hexbin_gene_new”schex_plot_gene美元参数< -“类型数\ n行动prop_0\ nrownames ODC1”schex_plot_gene美元ColumnSource < -“零”schex_plot_gene美元RowSource < -“零”schex_plot_gene美元DataBoxOpen < -真正的应用< -iSEE(pbmc_small,customDataArgs =schex_plot_gene,initialPanels =DataFrame(Name =c(“自定义数据图1”),宽度=c(12)),customDataFun =列表(plot_hexbin_gene_new =plot_hexbin_gene_new))
不幸的是,在iSEE应用程序中,图不能像用图一样方便地显示不同的基因shinydashboards
。如果你想显示一个不同的基因,你需要编辑以下框:
例如,通过键入
类型计数动作prop_0行名CD19
您可以更改绘图来显示的表达式CD19。