visuwiki
Visualisierung

Moritz Thomas, Timo Sona, Valentin Plattner, Alexander Daum & Sebastian Schuler

visuwiki

Dieses Markdown dokumentiert das GDV Projekt visuwiki

Jeder Nutzer von Wikipedia kennt es: Man liest einen Wikipedia Artikel, sieht eine interessante Verknüpfung und klickt darauf. Auf diese Weise navigiert man sich immer weiter durch das Netzwerk von Artikeln. Auf dieses Vorgehen wollten für unser Vorhaben - das Vergleichen von verlinkten Wikipedia-Artikeln anhand von Popularität und Kontroversität - aufbauen und dabei unterstützen. Um diesen Vergleich zu ermöglichen, haben wir eine Visualisierung erstellt in welcher die meist besuchten Verlinkungen für einen beliebigen Artikel mit deren Besucherzahlen und Kontroversiät aufgezeigt werden.

Einführung / Konzept

Das Projekt VisuWiki entstand im Rahmen der Vorlesung GDV (Grundlagen der Datenvisualisierung) und wurde als einzige Vorgabe dadurch beschränkt, dass es auf Daten der Wikipedia API aufbauen muss. Mit dem Fokus auf Wikipedia haben wir uns die Frage gestellt ob es möglich ist, bei Wikipedia Artikeln die direkt miteinander verknüpft sind einen Zusammenhang zwischen der Populatität und der Kontroversität zu erkennen.

Hierfür wollten wir dem Benutzer die Möglichkeit bieten, den Namen eines beliebigen Wikipedia-Artikels für den er diese Zusammenhänge wissen möchte anzugeben. Außerdem soll dieser in der Lage sein, die Wikipedia-Sprachversion dieses Artikels selbst zu bestimmen. Der Benutzer sollte so wenig wie möglich eingeschränkt und auch beim eingangs erwähnten Navigieren durch das Artikelnetzwerk unterstützt werden.

Daten / Auswertung

Daten

Die für das Projekt bezogenen Daten stammen von der Wikipedia API und können in allen Sprachversionen von Wikipedia abgerufen werden. Um die Verarbeitung der Daten im Frontend zu vereinfachen, werden alle bezogenen Daten vorher in einem auf NodeJS basierenden Backend aufbereitet und über eine REST Schnittstelle bereitgestellt. Folgende Informationen können über die Rest Schnittstelle eingeholt werden:

Verlinkte Artikel
Anzahl der Aufrufe
Anzahl an Änderungen (unterteilt in Hinzufügend und löschend), sowie die Anzahl an Bytes die hierbei hinzufügt oder gelöscht wurden.

Der Zeitraum dieser Daten beschränkt sich auf die letzten 60 Tage um Vergleichbarkeit und Aktualität gewährleisten zu können. Die Anzahl der Aufrufe eines Artikels wird als Referenzwert für die Popularität eines Artikels verwendet. Zum Berechnen der Kontroversität, wird die durchschnittliche Anzahl an Bytes, die bei einem Edit hinzugefügt und entfernt wurden mit einem Faktor multipliziert. Dieser Faktor wiederum liegt zwischen 0 und 1 und ergibt sich aus der Anzahl aller Edits, welche etwas hinzugefügt oder gelöscht haben.

Prozess

Im Verlauf des Projekts haben wir versucht eine geeignete Darstellungsform der für uns relevanten Daten zu finden. Schon bei ersten Anfragen über die API wurde klar, das es warscheinlich nicht möglich sein wird alle verknüpften Artikel in einer sinnvollen Visualisierung anzeigen zu lassen, da viele Artikel zu mehreren hunterten weiteren Artikeln weiter verweisen.

In ersten Plänen wollten wir die Verknüpften Artikel über mehrere Ebenen in Hierarchischer Form anzeigen lassen, diese ersten Ideen wurden jedoch wieder verworfen, da wir hier keine Möglichkeit gefunden haben Popularität und Controversität sinnvoll darzustellen.

Enwurf Hierarchie 1
Enwurf Hierarchie 2

Weitere Entwürfe befassten sich mit mit der Darstellung der Daten in einem Netzwerk in welchem wir die Größe und Farbe der einzelnen Elemente verwenden wollten, um Popularität und Kontroversität dar zu stellen.

Enwurf Netzwerkt

Bei den Netzwerk Diagrammen haben wir festgestellt, dass man bei zu vielen Elementen die Übersicht verliert und haben uns darauf geeinigt, dass wir uns bei den anzuzeigenden Elementen auf wenige Wichtige beschränken, sodass man sofort sehen kann um welchen Artikel es sich jeweils handelt. Um hier einen optisch schöneren Eindruck zu hinterlassen, haben wir uns dafür entschieden Hexagons als einzelne Elemente zu verwenden. Hierbei sollte die Anzahl der Rahmen die Popularität wieder geben und die Farbe die Kontroversität

Enwurf Umfeld
Enwurf Umfeld Final

Um herauszufinden, ob unsere Idee wirklich visualisierbar ist, mussten wir ermitteln, wie aussagekräftig die von uns gewählten Daten sind. Daher visualisierten wir die erhaltenen Links einer Seite zunächst in Tableau und sortierten diese nach der Anzahl der Aufrufe.

Visualisierungsexperiment Tableau

Hier stellten wir fest, dass einige erwartete Artikel in den ersten sechs Verlinkungen vorkamen, aber auch Überraschungen. Beispielsweise war einige Tage “Youtube” die populärste Verlinkungen auf der Seite von “Donald Trump”.

Prototyp / Ergebnisse

Visualisierung

Das Ziel der Visualisierung ist es die vorausgewählten Artikel dem Nutzer so zu präsentieren, dass er ihre Popularität und Kontroversität schnell erfassen und mit den anderen Artikeln vergleichen kann. Zudem ermöglicht es diese vereinfachte Darstellung eines Netzwerkes dem Nutzter schnell durch viele Artikel zu navigieren. Um die Visualisierung möglichst intuitiv zu gestalten wird die Kontroversität, die eine Art Gefühlszustand vermittlet durch eine Farbskala von Grün bis Rot dargestellt, wobei Grün eine geringe Kontroversität suggeriert, Rot hingegen eine hohe Kontroversität. Da es sich bei der Popularität um die reine Anzahl der Aufrufe handelt, wird diese auf die Größe der Felder abgebildet.

Prototyp final: Visualisierung (links), Liste Verlinkter Artikel (mitte), Suchfenster (rechts oben), Liste zuletzt aufgerufener Artikel (rechts unten)

Interaktionen: - Aufrufen beliebiger Artikel über Suchfenster - Beliebiges weiter-/zurücknavigieren durch klicken auf Hexagons oder Elemente der Verlinkten / zuletzt besuchten Artikel - Einblenden von Detaildrawer bei Hovern über Hexagons - Vergleichen von aktuellem Element und Center Element

Details Russland

Erkenntnisse

Interessante Beispiele die wir bei dem Arbeiten mit den Datensätzen finden konnten, sind unter anderem die Ergebnisse der Suchen nach der Demokratischen Partei im englischen Wikipedia und nach den Anschlägen vom elften September im deutschen wikipedia.

Visualisierung Demokratische Partei - Englisches Wikipedia

Die Visualisierung bei der demokratische Partei lässt schließen, dass sowohl die demokratische Partei als auch Barack Obama kontroverser sind als der aktuelle Präsident Donald Trump. Der Grund weshalb wir dieses Beispiel so interessant fanden war, dass über Donald Trump (besonders in Amerika) sehr viel in den Medien berichtet und diskutiert wird, er wird weltweit als sehr kontoverser Chrakter gehandelt. Barack Obama hingegen ist schon seit längerer Zeit nicht mehr im Amt und hatte keine erwähnenswerten Medienauftritte.

Visualisierung 9/11 - Deutsches Wikipedia

Das zweite Beispiel bildet die Visualisierung über den elften September im deutschen Wikipedia. Hier waren wir sehr über das Auftreten des Artikels der Stadt Hamburg überrascht. Erst nach erneuter Recherge wurde uns bewusst, dass einige der Attentäter aus Hamburg kamen.

Weitere interessante Beispiele waren zum Beispiel, das “Youtube” als populärer Link bei “Donald Trump” auftrat. Auch konnte man hier Erkennen, dass sich aktuelle Themen in der Popularität der Wikipedia Artikel wiederspiegeln. Am 12.06.2017 war in dem Artikel “Donald Trump” die populärste Verlinkung “Youtube”. Am 26.06.2017 hingegen übertraf die Popularität von “Emmanuel Macron” und “James Comey” die von “Youtube” was durch aktuelle Ereignisse wie die französischen Wahlen bzw. der Amtsenthebung von James Comey durch Donald Trump begründet werden kann.

Probleme

Bei der Implementierung unseres Prototyps sind besonders performancetechnisch einige Probleme aufgetreten. Aufgrund der hohen Anzahl an Verlinkungen - Beispiel Donald Trump mit über 2000 verlinkten Artikeln - die einzeln auf Popularität und teilweise auf Kontroversität geprüft werden mussten, war beim abrufen eines Artikels mit sehr hohen Wartezeiten zu rechnen. Aufgrund dieser war es uns auch nicht möglich die Ergebnisslisten durch backlinks weiter zu filtern ohne diese weiter zu erhöhen. Das Prüfen von verlinkten Artikeln auf Backlinks wäre eine gute Möglichkeit gewesen unrelevante Artikel aus den Ergebnissen heraus zu filtern. So werden zum Beispiel Länderartikel in sehr vielen Artikeln verlinkt obwohl diese oft nicht zum direkten Umfeld gehören. (Siehe Abbildung)

Visualisierung 9/11 - Englisches Wikipedia - Indien als irrelevante Verknüpfung

Implementierung

Nachdem wir uns die zur Verfügung stehende Daten angeschaut hatten, fanden wir sehr interessant herauszufinden, welche Artikel mit welchen verlinkt sind. Daher haben wir uns einen Weg überlegt, wie wir Nutzer die miteinander verlinkten Artikel aufbereiten können. Wir entschieden uns für eine möglichst einfach erreichbare, intuitive und interaktive Umsetzung in Form einer Website. Um die Rechenlast für das Endgerät möglichst gering zu halten haben wir die Anwendung in eine Client- und mehrere Server-Komponenten aufgeteilt: Das Frontend wurde mit HTML, CSS und d3 umgesetzt. Im Backend laufen zwei NodeJS-Server, einer hosted eine REST-API, der andere einen Webserver.

Fazit

Mit unserer Visualisierung können wir die Ergebnisse in einer übersichtlichen und Aussagekräftigen Form zeigen. Die Popularität kann gut vom Nutzer wahrgenommen werden. Problematisch ist der Algorithmus zur Berechnung der Kontroversität da dies keine direkt ablesbare und eindeutig verständliche Kennzahl ist. Um diese besser bestimmen zu können, müssten wir noch mehr Zeit in die Analyse und in die Weiterentwicklung des Algorithmus investieren und auch stärker im Dialog mit zukünftigen Nutzern arbeiten. Für zukünftige Weiterentwicklungen des Prototyps könnte man sich außerdem mit einer Vergleichsansicht auseinander setzen in dem verschiedene Artikel miteinander verglichen werden können. Auch über weitere Diagramme in der Detailansicht könnte ein großer Mehrwert erreicht werden. So könnten hier ein Popularitäts- oder Kontroversitätsverlauf angezeigt werden. Auch das Filtern der Verlinkungen (z.B. durch Prüfen auf Backlinks) wäre eine essenzielle Funktion welche der Visualisierung einen höheren Nutzen verschaffen würde.