## ----setup, include=FALSE----------------------------------------------------- knitr::opts_chunk$set(echo = TRUE) ## ----echo = FALSE------------------------------------------------------------- options(crayon.enabled = FALSE, cli.num_colors = 0) ## ----------------------------------------------------------------------------- library(metasnf) # Generate data_list my_dl <- data_list( list( data = expression_df, name = "expression_data", domain = "gene_expression", type = "continuous" ), list( data = methylation_df, name = "methylation_data", domain = "gene_methylation", type = "continuous" ), list( data = gender_df, name = "gender", domain = "demographics", type = "categorical" ), list( data = diagnosis_df, name = "diagnosis", domain = "clinical", type = "categorical" ), list( data = age_df, name = "age", domain = "demographics", type = "discrete" ), uid = "patient_id" ) set.seed(42) my_sc <- snf_config( my_dl, n_solutions = 1, max_k = 40 ) sol_df <- batch_snf( my_dl, my_sc, return_sim_mats = TRUE ) similarity_matrices <- sim_mats_list(sol_df) # The first (and only) similarity matrix: similarity_matrix <- similarity_matrices[[1]] # The first (and only) cluster solution: cluster_solution <- t(sol_df) ## ----eval = FALSE------------------------------------------------------------- # similarity_matrix_hm <- similarity_matrix_heatmap( # similarity_matrix = similarity_matrix, # cluster_solution = cluster_solution, # heatmap_height = grid::unit(10, "cm"), # heatmap_width = grid::unit(10, "cm") # ) ## ----eval = FALSE, echo = FALSE----------------------------------------------- # save_heatmap( # heatmap = similarity_matrix_hm, # path = "vignettes/similarity_matrix_heatmap.png", # width = 410, # height = 330, # res = 80 # ) ## ----eval = FALSE------------------------------------------------------------- # annotated_sm_hm <- similarity_matrix_heatmap( # similarity_matrix = similarity_matrix, # cluster_solution = cluster_solution, # scale_diag = "mean", # log_graph = TRUE, # data = my_dl, # left_hm = list( # "Diagnosis" = "diagnosis" # ), # top_hm = list( # "Gender" = "gender" # ), # top_bar = list( # "Age" = "age" # ), # annotation_colours = list( # Diagnosis = c( # "definite asthma" = "red3", # "possible asthma" = "pink1", # "no asthma" = "bisque1" # ), # Gender = c( # "female" = "purple", # "male" = "lightgreen" # ) # ), # heatmap_height = grid::unit(10, "cm"), # heatmap_width = grid::unit(10, "cm") # ) ## ----eval = FALSE, echo = FALSE----------------------------------------------- # save_heatmap( # heatmap = annotated_sm_hm, # path = "vignettes/annotated_sm_heatmap.png", # width = 500, # height = 440, # res = 80 # ) ## ----eval = FALSE------------------------------------------------------------- # merged_df <- as.data.frame(my_dl) # order <- sort(cluster_solution[, 2], index.return = TRUE)$"ix" # merged_df <- merged_df[order, ] # # top_annotations <- ComplexHeatmap::HeatmapAnnotation( # Age = ComplexHeatmap::anno_barplot(merged_df$"age"), # Gender = merged_df$"gender", # col = list( # Gender = c( # "female" = "purple", # "male" = "lightgreen" # ) # ), # show_legend = TRUE # ) # # left_annotations <- ComplexHeatmap::rowAnnotation( # Diagnosis = merged_df$"diagnosis", # col = list( # Diagnosis = c( # "definite asthma" = "red3", # "possible asthma" = "pink1", # "no asthma" = "bisque1" # ) # ), # show_legend = TRUE # ) # # similarity_matrix_heatmap( # similarity_matrix = similarity_matrix, # cluster_solution = cluster_solution, # scale_diag = "mean", # log_graph = TRUE, # data = merged_df, # top_annotation = top_annotations, # left_annotation = left_annotations # )