X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=venn.cpp;h=217dd3594081703b6cf7a28857cd553b62bcfaec;hb=7e354c9abb09ea3cf5b500a16cc7f6dd79ccb6f5;hp=2c40c25ed7fadfcc50958ba1a1c87e124a939cf6;hpb=92dde9a6d6c638fcbbd5dbaa5c79167564f90e49;p=mothur.git diff --git a/venn.cpp b/venn.cpp index 2c40c25..217dd35 100644 --- a/venn.cpp +++ b/venn.cpp @@ -380,78 +380,105 @@ void Venn::getPic(vector lookup, vector vCalcs //get estimates for numA data = singleCalc->getValues(sabundA); numA = data[0]; + //cout << "num a = " << numA << endl; //get estimates for numB data = singleCalc->getValues(sabundB); numB = data[0]; - + //cout << "num b = " << numB << endl; //get estimates for numC data = singleCalc->getValues(sabundC); numC = data[0]; - + //cout << "num c = " << numC << endl; //get estimates for numD data = singleCalc->getValues(sabundD); numD = data[0]; - +//cout << "num d = " << numD << endl; //get estimates for pairs subset.clear(); subset.push_back(lookup[0]); subset.push_back(lookup[1]); data = vCalcs[i]->getValues(subset); sharedAB = data[0]; - + //cout << "num ab = " << sharedAB << endl; subset.clear(); subset.push_back(lookup[0]); subset.push_back(lookup[2]); data = vCalcs[i]->getValues(subset); sharedAC = data[0]; - + //cout << "num ac = " << sharedAC << endl; subset.clear(); subset.push_back(lookup[0]); subset.push_back(lookup[3]); data = vCalcs[i]->getValues(subset); sharedAD = data[0]; - + //cout << "num ad = " << sharedAD << endl; subset.clear(); subset.push_back(lookup[1]); subset.push_back(lookup[2]); data = vCalcs[i]->getValues(subset); sharedBC = data[0]; - + //cout << "num bc = " << sharedBC << endl; subset.clear(); subset.push_back(lookup[1]); subset.push_back(lookup[3]); data = vCalcs[i]->getValues(subset); sharedBD = data[0]; - + //cout << "num bd = " << sharedBD << endl; subset.clear(); subset.push_back(lookup[2]); subset.push_back(lookup[3]); data = vCalcs[i]->getValues(subset); sharedCD = data[0]; - - + + //cout << "num cd = " << sharedCD << endl; //get estimates for combos of 3 subset.clear(); subset.push_back(lookup[0]); subset.push_back(lookup[1]); subset.push_back(lookup[2]); data = vCalcs[i]->getValues(subset); sharedABC = data[0]; - + //cout << "num abc = " << sharedABC << endl; subset.clear(); subset.push_back(lookup[0]); subset.push_back(lookup[2]); subset.push_back(lookup[3]); data = vCalcs[i]->getValues(subset); sharedACD = data[0]; - + //cout << "num acd = " << sharedACD << endl; subset.clear(); subset.push_back(lookup[1]); subset.push_back(lookup[2]); subset.push_back(lookup[3]); data = vCalcs[i]->getValues(subset); sharedBCD = data[0]; - + //cout << "num bcd = " << sharedBCD << endl; subset.clear(); subset.push_back(lookup[0]); subset.push_back(lookup[1]); subset.push_back(lookup[3]); data = vCalcs[i]->getValues(subset); sharedABD = data[0]; - +//cout << "num abd = " << sharedABD << endl; //get estimate for all four data = vCalcs[i]->getValues(lookup); sharedABCD = data[0]; - - + //cout << "num abcd = " << sharedABCD << endl << endl; + //make adjustments + sharedABC = sharedABC - sharedABCD; + //cout << "num abc = " << sharedABC << endl; + sharedABD = sharedABD - sharedABCD; + //cout << "num abd = " << sharedABD << endl; + sharedACD = sharedACD - sharedABCD; + //cout << "num acd = " << sharedACD << endl; + sharedBCD = sharedBCD - sharedABCD; + //cout << "num bcd = " << sharedBCD << endl; + + sharedAB = sharedAB - sharedABC - sharedABCD - sharedABD; // cout << "num ab = " << sharedAB << endl; + sharedAC = sharedAC - sharedABC - sharedABCD - sharedACD; // cout << "num ac = " << sharedAC << endl; + sharedAD = sharedAD - sharedABD - sharedABCD - sharedACD; // cout << "num ad = " << sharedAD << endl; + + sharedBC = sharedBC - sharedABC - sharedABCD - sharedBCD; // cout << "num bc = " << sharedBC << endl; + sharedBD = sharedBD - sharedABD - sharedABCD - sharedBCD; // cout << "num bd = " << sharedBD << endl; + sharedCD = sharedCD - sharedACD - sharedABCD - sharedBCD; // cout << "num cd = " << sharedCD << endl; + + numA = numA - sharedAB - sharedAC - sharedAD - sharedABCD - sharedABC - sharedACD - sharedABD; + //cout << "num a = " << numA << endl; + numB = numB - sharedAB - sharedBC - sharedBD - sharedABCD - sharedABC - sharedABD - sharedBCD; + //cout << "num b = " << numB << endl; + numC = numC - sharedAC - sharedBC - sharedCD - sharedABCD - sharedABC - sharedACD - sharedBCD; + //cout << "num c = " << numC << endl; + numD = numD - sharedAD - sharedBD - sharedCD - sharedABCD - sharedBCD - sharedACD - sharedABD; + //cout << "num d = " << numD << endl; + //image window outsvg << "\n"; outsvg << "\n"; @@ -478,8 +505,8 @@ void Venn::getPic(vector lookup, vector vCalcs outsvg << "" + toString(sharedBC) + "\n"; outsvg << "" + toString(numD) + "\n"; outsvg << "getGroup().length() / 2)) + "\" y=\"210\">" + lookup[3]->getGroup() + "\n"; - outsvg << "" + toString(sharedAD) + "\n"; - outsvg << "" + toString(sharedBD) + "\n"; + outsvg << "" + toString(sharedAD) + "\n"; + outsvg << "" + toString(sharedBD) + "\n"; outsvg << "" + toString(sharedCD) + "\n"; outsvg << "" + toString(sharedABD) + "\n"; outsvg << "" + toString(sharedBCD) + "\n";