Wizualizacja skrzyżowań wielu zbiorów


30

Czy istnieje model wizualizacji, który jest dobry do pokazywania nakładania się przecięcia wielu zbiorów?

Myślę o czymś takim jak diagramy Venna, ale to może jakoś lepiej nadawać się do większej liczby zestawów, takich jak 10 lub więcej. Wikipedia pokazuje kilka wyższych zestawów diagramów Venna, ale nawet 4 zestawy diagramów są warte wzięcia.

Domyślam się, że końcowy wynik danych byłby taki, że wiele zestawów się nie nakłada, więc możliwe jest, że diagramy Venna byłyby w porządku - ale chciałbym znaleźć narzędzie komputerowe, które byłoby w stanie to wygenerować. Wygląda mi na to, że wykresy Google nie pozwalają na tak wiele zestawów.


1
Powiązane, ale w przypadku niewielkiej liczby zestawów (w celach informacyjnych): stats.stackexchange.com/questions/4211/…

Odpowiedzi:


18

Kiedy masz dużą liczbę zestawów, spróbowałbym czegoś bardziej liniowego i pokazuje linki bezpośrednio (np. Wykres sieci). Zarówno Flare, jak i Protovis mają narzędzia do obsługi tych wizualizacji.

Zobacz to pytanie dla takich przykładów :

alternatywny tekst


(+1) Dobra odpowiedź! - Szczególnie podoba mi się grafika. Zastanawiałem się, czy można to zrobić w R?
suncoolsu

1
Nie wiem, jak to zrobić; mój pakiet webvis zapewnia opakowanie dla Protovis, ale zrobienie tej grafiki byłoby dużo pracy. Nawiasem mówiąc, ten artykuł wprowadza „schemat łuku”, który jest powiązany: ieg.ifs.tuwien.ac.at/~aigner/teaching/ws06/infovis_ue/papers/…
Shane

1
@ suncoolsu, schemat pakietu R może być w stanie wykonać ten sam „schemat łuku”, na który wskazał Shane. Wygląda na to, że ciężko byłoby jednak sprawić, by „fabuła fabuły” wyglądała jak powyższa grafika. cran.r-project.org/web/packages/diagram/vignettes/diagram.pdf .
Andy W

i Andy. Dziękuję Ci za Twoje odpowiedzi. @Shane, widziałem twój pakiet webvis. Ale nadal muszę to zgłębiać. Bardzo lubię wykresy protovis. Mają świetną stronę internetową.
suncoolsu

1
Niezły wykres, ale nie odpowiada na początkowe pytanie, ponieważ nie można przedstawić przecięcia 3 lub więcej zbiorów. Czy istnieje jego wariant?
nassimhddd

11

Nie będzie to konkurować z odpowiedzią @ Shane, ponieważ wyświetlacze okrągłe naprawdę dobrze nadają się do wyświetlania złożonych relacji z wielowymiarowymi zestawami danych.

venn()K.=4

K.=4

W celu uzyskania dalszych informacji możesz być zainteresowany

Kestler i in., Uogólnione diagramy Venna: nowa metoda wizualizacji złożonych relacji w zestawie genetycznym , Bioinformatics, 21 (8), 1592-1595 (2004).

Diagramy Venna mają jednak swoje ograniczenia. Pod tym względem podoba mi się podejście Roberta Kosary w Sightings: A Vennerable Challenge lub z zestawami równoległymi (ale zobacz także dyskusję na blogu Andrew Gelmana).


Wygląda dobrze. bardzo by mi się podobało, gdyby zaakceptował dane nienumeryczne. Wydaje się, że najpierw trzeba przekształcić ich dane w listę numeryczną.
eastafri

Dla celów praktycznych byłoby wspaniale dołączyć kilka zrzutów ekranu
5783745

7

Opracowaliśmy podejście oparte na macierzy dla zestawów skrzyżowań o nazwie UpSet, możesz to sprawdzić na stronie http://vcg.github.io/upset/ . Oto przykład:

Zrzut ekranu UpSet

Matryca po lewej stronie wskazuje skrzyżowanie, które reprezentuje rząd, ostatni rząd tutaj, na przykład, jest skrzyżowaniem gatunków filmowych „Akcja, Przygoda i Dzieci”. Słupki po prawej stronie pokazują rozmiar skrzyżowania, w tym przykładzie 4.

Możesz także wykreślić atrybuty skrzyżowań lub innych zaznaczeń itp. Sprawdź stronę internetową, aby uzyskać szczegółowe informacje.

Istnieje teraz również wersja statyczna dla języka R, którą można znaleźć na stronie internetowej wspomnianej powyżej lub przechodząc tutaj: https://github.com/hms-dbmi/UpSetR/

Najnowocześniejszy raport na temat wizualizacji zestawu jest dostępny na stronie http://www.cvast.tuwien.ac.at/SetViz - większość z nich ma jednak charakter akademicki i nie zawiera łatwo dostępnego kodu.


1
Jeśli chodzi o mnie, obraz, który opublikowałeś, jest raczej przykładem przerysowania, ze zbyt dużą ilością informacji spakowanych na jednej działce ...
Tim

1
@Tim. Rozumiem, co mówisz, ale tak naprawdę nie jest to przesadzanie, ponieważ wszystkie elementy wizualne są wyraźnie widoczne i oddzielone. Można argumentować, że fabuła jest zbyt złożona, aby można ją było łatwo dostrzec, ale równie dobrze może to być związane z brakiem przeszkolenia w korzystaniu z fabuły - nie wszystkie wizualizacje mogą lub powinny być skierowane do nieprzeszkolonych użytkowników, ponieważ uproszczenia często prowadzą do ograniczonego zakresu (np. słaba skalowalność diagramów Venna)
ThomasP85,

@ ThomasP85 przeprowadzono wiele badań, które pokazują, że ludzie są naprawdę źli w interpretacji wizualnej fabuł (nawet „eksperci”), w tym nawet takich podstawowych rzeczy, jak wykresy kołowe. W większości przypadków skomplikowana wizualizacja prowadzi do błędnych interpretacji i nieporozumień.
Tim

@Tim Zgadzam się, że proste jest zawsze lepsze, ale złożone pytania czasami zawierają złożone odpowiedzi. Powodem, dla którego postawiono to pytanie, jest to, że do tej pory nie istnieje przekonująca, prosta technika wizualizacji, która poradziłaby sobie z dużą liczbą ustawionych skrzyżowań. Przyjęta odpowiedź dotyczy tylko przecięć 2 stopni, które wraz ze wzrostem liczby zestawów stanowią coraz mniejszą część całkowitej liczby przecięć.
ThomasP85,

... a twój przykład z wykresami kołowymi jest związany z faktem, że ludzie (eksperci lub nie) są okropni w porównywaniu kątów, dlatego wykresów kołowych nigdy nie należy używać :-)
ThomasP85,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.