Learn R Programming

ELBOW (version 1.8.0)

plot_elbow: plots Elbow curve data.

Description

Plots an elbow curve and its associated data:
  • the upper and lower elbow limits for the curve
  • the upper, lower, and median initial condition Elbow plots
  • the $\log\chi^2$ p-value for the Elbow curve
  • the variance for the upper and lower Elbow cut-off values

Usage

plot_elbow(my_data, upper_limit, lower_limit, pvalue1, prowmin, prowmax, prowmedian, max_upper_variance, min_upper_variance, max_lower_variance, min_lower_variance, gtitle = "")

Arguments

my_data
A table (data.frame) to plot. The columns in the table should be as follows:
  • probes --- one column containing the names of the probes
  • fold --- the fold values for the table
upper_limit
the upper limit/cut-off for the elbow.
lower_limit
the lower limit/cut-off for the elbow.
pvalue1
the $\log\chi^2$ p-value for the elbow curve.
prowmin
the error limit based on the maximum value for each probe.
prowmax
the error limit based on the minimum value for each probe.
prowmedian
the null (median) value for each probe.
max_upper_variance
the maximum upper elbow limit (most positive).
min_upper_variance
the minimum upper elbow limit.
max_lower_variance
the maximum lower elbow limit.
min_lower_variance
the minimum lower elbow limit (most negative).
gtitle
the title to display for the graph.

Examples

Run this code
# read in the EcoliMutMA sample data from the package
		data(EcoliMutMA, package="ELBOW")
		csv_data <- EcoliMutMA
		# - OR - Read in a CSV file (uncomment - remove the #'s
		#        - from the line below and replace 'filename' with
		#        the CSV file's filename)
		# csv_data <- read.csv(filename)

		# set the number of initial and final condition replicates both to three
		init_count  <- 3
		final_count <- 3

		# Parse the probes, intial conditions and final conditions
		# out of the CSV file.  Please see: extract_working_sets
		# for more information.
		#
		# init_count should be the number of columns associated with
		#       the initial conditions of the experiment.
		# final_count should be the number of columns associated with
		#       the final conditions of the experiment.
		working_sets <- extract_working_sets(csv_data, init_count, final_count)

		probes <- working_sets[[1]]
		initial_conditions <- working_sets[[2]]
		final_conditions <- working_sets[[3]]

		# Uncomment to output the plot to a PNG file (optional)
		# png(file="output_plot.png")

		my_data <- replicates_to_fold(probes, initial_conditions, final_conditions)

		# compute the elbow for the dataset
		limits <- do_elbow(data.frame(my_data$fold))

		plus_minus <- elbow_variance(probes, initial_conditions, final_conditions)

		max_upper_variance <- plus_minus$max_upper
		min_upper_variance <- plus_minus$min_upper
		max_lower_variance <- plus_minus$max_lower
		min_lower_variance <- plus_minus$min_lower

		# rounded number for nice appearance graph
		upper_limit <- round(limits[[1]],digits=2)

		# rounded number nice appearance for graph
		lower_limit <- round(limits[[2]],digits=2)

		p_limits <- null_variance(my_data, upper_limit, lower_limit, initial_conditions)

		prowmin <- p_limits[[1]]
		prowmax <- p_limits[[2]]
		prowmedian <- p_limits[[3]]

		pvalue1 <- get_pvalue(my_data, upper_limit, lower_limit)
		plot_elbow(my_data, upper_limit, lower_limit, pvalue1, prowmin, prowmax, prowmedian, max_upper_variance, min_upper_variance, max_lower_variance, min_lower_variance, "Title of the ELBOW Plot")

Run the code above in your browser using DataLab