Learn R Programming

specmine (version 4.0.0)

tsne_kmeans_plot3D: t-SNE 3D k-means plot

Description

Creates an interactive three-dimensional t-SNE plot coloured by k-means clusters.

Usage

tsne_kmeans_plot3D(
  dataset,
  tsne.result,
  num.clusters = 3,
  dims = c(1, 2, 3),
  kmeans.result = NULL,
  title = "t-SNE 3D K-means Plot"
)

Value

A plotly htmlwidget.

Arguments

dataset

Dataset to cluster.

tsne.result

Result returned by tsne_analysis_dataset().

num.clusters

Number of k-means clusters.

dims

Three embedding dimensions to plot.

kmeans.result

Optional result returned by clustering().

title

Plot title.

Examples

Run this code
if (requireNamespace("Rtsne", quietly = TRUE) &&
    requireNamespace("plotly", quietly = TRUE)) {
  datamat <- matrix(
    rnorm(40),
    nrow = 5,
    dimnames = list(
      paste0("x", 1:5),
      paste0("s", 1:8)
    )
  )

  dataset <- list(
    data = datamat,
    metadata = data.frame(
      class = factor(rep(c("A", "B"), length.out = 8))
    )
  )

  tsne.result <- tsne_analysis_dataset(
    dataset,
    n_components = 3,
    perplexity = 2,
    max_iter = 250,
    seed = 42
  )

  kmeans.result <- list(
    cluster = rep(1:2, each = 4)
  )

  tsne_kmeans_plot3D(
    dataset,
    tsne.result,
    num.clusters = 2,
    kmeans.result = kmeans.result
  )
}

Run the code above in your browser using DataLab