makeTernaryData {flowPlots}R Documentation

Prepare PFD Data for a Call to ternaryplot()

Description

This function takes a dataframe of polyfunctional degree (pfd) data and prepares a matrix with 3 columns (egs. PFD1,PFD2,PFD3, or PFD1-2, PFD3-4, PFD5-6) to use as input to ternaryplot() in the vcd pkg. If multiple columns are specified for one of the three columns, the percentages for the multiple columns will be summed.

Usage

   makeTernaryData(pfdData, columns1, columns2, columns3, 
      columnNames=c("PFD=1","PFD=2","PFD=3"))

Arguments

pfdData

data frame containing data for 1 or more groups

columns1

numeric; column(s) of pfd data to place in the first column of the matrix

columns2

numeric; column(s) of pfd data to place in the second column of the matrix

columns3

numeric; column(s) of pfd data to place in the third column of the matrix

columnNames

(optional) character vector of names for the three columns of the matrix

Value

matrix of 3 columns; rows = subjects, cols = data for each point on the triangle

Author(s)

N. Hawkins, Fred Hutchinson Cancer Research Center, Seattle, WA

See Also

StackedData

Examples

## Load the PFD Data to plot in a ternary plot

data(pfdDF)
pfdDataSubset = subset(pfdDF, stim=="LPS" & concGroup==3 & cell=="mDC")

## Prepare the PFD Data for a call to ternaryplot()

ternaryData = makeTernaryData(pfdDataSubset, 1, 2, 3:4)
colnames(ternaryData) = c("PFD1", "PFD2", "PFD3-4")

## Make the ternary plot

library(vcd)
ternaryplot(ternaryData, cex=.5, col=as.numeric(pfdDataSubset$group)*2, main="Stimulation = LPS, 
   Concentration Group = 3, Cell = mDC")

## Prepare a legend with group stats

adultPFDData = subset(pfdDataSubset, group=="adult", select=c(PFD1:PFD3))
neoPFDData = subset(pfdDataSubset, group=="neonate", select=c(PFD1:PFD3))
groupPFDDataList = list(adultPFDData, neoPFDData)
pfdGroupStatsList = computePFDGroupStatsList(groupPFDDataList, pfdValues=1:3, numDigitsMean=3, 
   numDigitsSD=2)
groupNames = c("Adults","Neonates")
legendNames = legendPFDStatsGroupNames(pfdGroupStatsList,groupNames)
grid_legend(0.8, 0.7, pch=c(20,20), col=c(2,4), legendNames, title = "Group (n), mean/sd:", 
   gp=gpar(cex=.8))

[Package flowPlots version 1.40.0 Index]