venneuler
calculates a Venn diagram from a set specification.
venneuler(combinations, weights, ...)
An object of the class VennDiagram
with following components:
centers of the circles (columns are x
and y
coordinates)
diameters of the circles
colors of the circles as values between 0 and 1
labels of the circles
residuals (percentage difference between input intersection area and fitted intersection area)
stress value for solution
.01 critical value for stress based on random data
.05 critical value for stress based on random data
This can be one of:
a character vector (specifies disjoint class combinations as
class names separated by the ampersand &
character --
e.g. c("A","B","A&B")
)
a named numeric vector (names specify class combinations and
values specify weights -- e.g. c(A=1, B=2, `A&B`=0.5)
)
a character matrix of two columns (specifies mapping of
elements to sets -- elements in the first column and set names in the
second column, weights
argument is ignored)
a logical or numeric matrix whose columns represent sets and
co-occurrence is defined by non-zero (rep. TRUE
) values in rows
(weight for a row being 1 for logical matrices or the row sum for
numeric matrices).
For convenience data frames can be passed instead of matrices and they
will be coerced using as.matrix()
.
If combinations
is a character vector then this argument
specifies the associated weights. It is ignored in all other cases.
Additional arguments (currently unused).
Lee Wilkinson <leland.wilkinson@gmail.com>, R package: Simon Urbanek <simon.urbanek@r-project.org>
plot.VennDiagram
vd <- venneuler(c(A=0.3, B=0.3, C=1.1, "A&B"=0.1, "A&C"=0.2, "B&C"=0.1 ,"A&B&C"=0.1))
plot(vd)
# same as c(A=1, `A&B&C`=1, C=1)
m <- data.frame(elements=c("1","2","2","2","3"), sets=c("A","A","B","C","C"))
v <- venneuler(m)
plot(v)
m <- as.matrix(data.frame(A=c(1.5, 0.2, 0.4, 0, 0),
B=c(0 , 0.2, 0 , 1, 0),
C=c(0 , 0 , 0.3, 0, 1)))
# without weights
v <- venneuler(m > 0)
plot(v)
# with weights
v <- venneuler(m)
plot(v)
Run the code above in your browser using DataLab