Schlagwort-Archive: design

Rollilogo, neu gedacht

Aus der Reihe deskriptive vs. normative Sprache bzw. Symbolik: The Accessible Icon Project hat sich des Rollstuhlfahrer*innenlogos angenommen, das normalerweise barrierefreie Toiletten, reservierte Parkplaetze etc. markiert.

Webdesignerdepot erklaert, warum:

There’s no doubt that the existing icon is easily recognizable; the problem, especially for the people it is supposed to represent, is that it portraits wheelchair users as passive and inactive—the original variation even depicted wheelchair users as headless. […] The new design is as easily recognizable, and ADA compliant but also features a person in control of their own movement and navigating the world under their own power.

The Accessible Icon Goes to NYC (February 2014) from Tim Lindgren on Vimeo.

Grosser Wermutstropfen: Das Logo ist zwar Creative-Commons-lizensiert, aber mit einer NC-Klausel, und dann auch noch in Verbindung mit dem SA-Schalter. Das wird — aus gutem Grund — dazu fuehren, dass viele Menschen die Finger davon lassen werden. Schade.

(via)

Schoenere Karten mit R und ggplot2

Vor einiger Zeit hatte ich hier schon einmal beschrieben, wie sich mit R einfache Karten und Visualisierungen herstellen lassen. Das geht natuerlich noch deutlich komplexer — aber eben auch schoener. Edward Tufte sollte eigentlich allen ein Begriff sein, die sich mit Visualisierung und grafischer Aufbereitung von Information beschaeftigen; „The Visual Display of Quantitative Information“ empfehle ich immer wieder gerne (Amazon-Affilliate-Link; alternativ ISBN 0961392142).

Neben Tufte gibt es noch ein weiteres grosses Werk, auf das ich bei der ganzen Kartiererei in R gestossen bin: „The Grammar of Graphics“ (Amazon-Affilliate-Link, alternativ ISBN 0387245448). „Gestossen“ ist hier weit ausgelegt, ich habe das Buch nicht einmal gelesen. Ich kenne aber die auf ihm basierende R-Library ggplot2, die die Grammar of Graphics fuer ihre Plots verwendet — und sie dabei aesthetisch ansehlich werden laesst.

Ich verwende im folgenden Beispiel wieder das ESRI-Shapefile der Stadt mit den integrierten Altersquotienten pro Stadtviertel. Prinzipiell laesst sich hier noch viel mehr machen, naemlich auch mit Daten aus Drittquellen. Dazu komme ich in einem spaeteren Post.

Zuerst holen wir uns einige Bibliotheken, setzen das Arbeitsverzeichnis und lesen das Shapefile ein. Ich binde in diesem Tutorial die Libraries immer erst dann ein, wenn eine ihrer Funktionen zum Einsatz kommt. Ich hoffe, so ist halbwegs nachzuvollziehen, was wozu gehoert. Die rgdal-Library erfordert PROJ.4, das einige Zeit lang in Debian und seinen Derivaten in einer kaputten Version daher kam; unter Ubuntu lohnt hier ein Blick auf UbuntuGIS.

library(sp)
library(rgdal)
setwd("/media/home/opendata/altersquotient")
ulm <- readOGR(".", "G_Altersquotient_311210")

Mit einem Blick in die ersten Zeilen des Datenteils unseres Shapefiles faellt auf, dass die Codierung (wieder) etwas gelitten hat. Das laesst sich durch Konvertierung und Ueberschreiben der urspruenglichen Spalten beheben.

head(ulm@data)
ulm@data$STT_Name <- iconv(ulm@data$STT_Name, "ISO_8859-1", "UTF-8")
ulm@data$STTV_Name <- iconv(ulm@data$STTV_Name, "ISO_8859-1", "UTF-8")

Im Folgenden trennen wir den Datenteil vom eigentlichen Shape und wandeln letzteres in Koordinatenreihen um. Um hinterher die einzelnen Teile wieder sinnvoll zusammenfuehren zu koennen, verpassen wir dem ulm-Objekt eine Spalte id, die einfach der Zeilennummer entspricht. Anschliessend speichern wir den Datenteil von ulm nach ulm.df

ulm@data$id <- rownames(ulm@data)
ulm.df <- as.data.frame(ulm)

Die bekannte Library maptools hilft uns nun mit seiner fortify()-Methode, aus dem Shapefile Koordinatenreihen zu machen. Leider ist das nicht so ganz GNU-konform, so dass wir erst einmal mit gpclibPermit() die Erlaubnis geben muessen, diese Teilfunktion auch zu benutzen. (Danke an diese Tutorials und Beispiele, die mich auf die Sache mit dem fortify() gebracht haben)

library(maptools)
gpclibPermit()
ulm_fort <- fortify(ulm, region="id")

Nun muessen ulm.df und ulm_fort wieder zu einem gemeinsamen Data Frame kombiniert werden. Das uebernimmt die join()-Funktion aus der plyr-Library, die wie ein SQL-Join funktioniert. Bei komplexeren Verknuepfungen sollte man das im Kopf behalten und gegebenenfalls explizit einen left oder right oder inner join machen, um nicht zu verzweifeln 😉

Wichtig ist natuerlich, dass beide Teile eine gemeinsame Spalte haben, anhand derer sie verbunden werden koennen. Mit einem head() sehen wir, dass das wunderbar der Fall ist.

library(plyr)
head(ulm.df)
head(ulm_fort)

ulm_merged <- join(ulm_fort, ulm.df, by=“id“)

Nun wird geplottet — mit dem altbekannten RColorBrewer und der ggplot2-Library. Wir fuegen hinzu:

  • Eine Aesthetikangabe: Welche Werte sollen fuer x, y und die Fuellung der Flaechen verwendet werden? Wir faerben anhand des Altersquotienten ein.
  • Die Angabe, aus den Koordinatenreihen Polygone zu zeichnen
  • Zusaetzlich weisse Umrisse um die Stadtviertel
  • Eine Farbskala fuer die Altersquotientenfuellung. colours = brewer.pal(9,“Greens“) wuerde schon reichen, dann gaebe es aber nur fuenf Abstufungen. Stattdessen definieren wir die breaks in Zehnerabstaenden, indem wir einen geeigneten Vektor uebergeben.

library(ggplot2)
library(RColorBrewer)
ggplot(ulm_merged) +
aes(long, lat, group=group, fill=ALTQU) +
geom_polygon() +
geom_path (color="white") +
scale_fill_gradientn(colours = brewer.pal(9, "Greens"), breaks = c(10, 20, 30, 40, 50, 60, 70, 80, 90)) +
coord_equal()

Et voila — eine wunderbare Karte mit schoenem, unaufdringlichem Gitternetz und abgesetztem Hintergrund 🙂

R ist jedoch nicht „nur“ dazu da, bunte Karten zu plotten, zumal ohne raeumlichen Bezug und (in diesem Fall) im Gauss-Krueger-Koordinatensystem. Die hier verwendeten Libraries koennen jedoch noch viel mehr: Komplexe Kombinationen von Daten, und vor allem auch die Ausgabe in verschiedensten Formaten. Google Fusion Tables? GeoJSON? Kein Problem.

Mehr dazu irgendwann demnaechst 😉

Karten mit R

Ich haette mich in den letzten Tagen eigentlich mit etwas voellig anderem beschaeftigen muessen. Deswegen habe ich mich in R eingearbeitet. Prokrastination, level: 14. Semester. Und weil mir das Spass gemacht hat, moechte ich meine Erfahrungen festhalten und teilen.

Am Ende dieses kleinen Durchlaufs steht eine Choroplethenkarte — also eine in Subregionen unterteilte Karte, deren Flaechenfaerbung gewisse Kennzahlen anzeigen kann. So etwas geht heutzutage auch schoen als Overlay-Karte mit OpenStreetMap, mich interessierte aber der Prozess in R, und wie man ueberhaupt einmal zu den passenden Farben kommt 😉

0: R installieren

R gibt es fuer Win, MacOS und Linux; ich habe mich mit der letzteren Variante beschaeftigt. Eigentlich ginge das wunderbar mit sudo apt-get install R, dann wird aber bei einigen Distributionen erst einmal eine aeltere Version installiert, die viele Dinge nicht kann, die wir spaeter noch brauchen. Hier ist beschrieben, wie man die passenden Paketquellen einbindet, sofern man nicht ohnehin aus dem Source heraus kompilieren moechte.

Wenn man moechte, kann man auch eine GUI verwenden. Ich habe ein wenig mit RKward gespielt, mit dem man schoen die zu erledigenden Schritte in eine Skriptdatei schreiben und Zeile fuer Zeile abarbeiten kann — das hilft, die eigenen Schritte hinterher auch festzuhalten. Prinzipiell geht aber alles auch in der Konsole → R ausfuehren und anfangen. Mit q() geht’s wieder zurueck in die Shell.

(Mittlerweile bin ich auch auf Deducer gestossen, der recht vielversprechend aussieht, dazu vielleicht spaeter noch etwas)

1: Erste Schritte

Ich werde nicht grossartig auf die R-Grundlagen eingehen — die eignet man sich am besten dann bei, wenn man irgendwo auf ein Problem stoesst. Das kurze Grundlagenhandbuch von Thomas Petzold hat mir hierfuer gut getaugt.

Die Uebersicht aller Ulmer Stadtviertel liegt auf ulmapi.de als ZIP-Archiv mit einem ESRI-Shapefile vor. Und von dort zur ersten primitiven Karte sind es eigentlich nur vier Zeilen:

library(maptools)
setwd("/media/home/opendata/stadtviertel")
ulm <- readShapePoly("Stadtviertel_Gesamt_270209.shp")
plot(ulm)

Falls die maptools- (oder eine beliebige andere) Bibliothek nicht vorhanden ist, kann sie aus R heraus mit install.packages("maptools") nachinstalliert werden. Gegebenenfalls ist hierfuer noch der gcc- und gfortran-Compiler zu installieren. Das Argument in setwd() sollte natuerlich das eigene Arbeitsverzeichnis sein, in dem die Shapes aus dem ZIP-Archiv liegen.

Mit diesen wenigen Zeilen haben wir also eine erstens zum schreien haessliche und zweitens vollkommen informationsfreie Karte mit den Umrissen der Ulmer Stadtviertel hinbekommen. Dieser Schritt bringt uns also ueberhaupt nichts nuetzliches, aber zumindest einmal das gute Gefuehl, dass da etwas geklappt hat 🙂

2: Farbe!

Interessanter wird es, wenn tatsaechlich auch Farbe ins Spiel kommt. Die Shapefiles bringen (in der Regel) eine DBase-dbf-Datei mit, in denen mit den Umrissen verknuepfte Daten mitgebracht werden. Die liegen nun im Datenslot der Variable ulm, die wir vorhin mit dem Shape gefuellt haben. Ein einfaches

ulm

wirft uns den kompletten Inhalt dieser Variable um die Ohren — also auch alle Koordinaten. Mit

names(ulm)

sehen wir die Namen der Datenvektoren, und mit

ulm@data

bekommen wir diese als „Tabelle“ angezeigt. Einzelne Spalten (bzw. Vektoren) koennen wir mit einem angehaengten $Spaltenname selektieren; so gibt

ulm@data$ST_NAME (oder einfach ulm$ST_NAME)

alle Eintraege im Datenvektor der Stadtteilnamen aus. Nach diesen Eintraegen koennen wir nun arbeiten — zum Beispiel, indem wir einfach einmal die Karte nach Stadtteilen faerben. Das geht in zwei Zeilen:

col <- rainbow(length(levels(ulm@data$ST_NAME)))
spplot(ulm, "ST_NAME", col.regions=col, main="Stadtviertel Ulms", sub="cc-by-sa, Datensatz der Stadt Ulm", lwd=.8, col="white")

rainbow() erzeugt hier einfach einen Farbverlauf — oder besser gesagt, einen Zeichenvektor mit so vielen (length()) RGB-Farben, wie es eindeutige Werte (levels()) im Vektor ST_NAME gibt. spplot() plottet hier ulm, faerbt die durch ST_NAME bezeichneten Regionen mit der vorhin erstellten Palette ein, setzt Titel und Untertitel und die Grenzen zwischen den einzelnen Flaechen auf weisse Linien.

(Zusammengebastelt anhand dieser Tutorials)

Auch diese Darstellung ist in der Darstellung eher unspannend — dargestellt werden so nur Raumordnungsdaten, keine statistischen Werte. Dazu kommen wir nun.

3: Malen nach Zahlen

Eigentlich sollen Zahlenwerte dargestellt werden, wie im R Choropleth Challenge demonstriert. Hierzu brauchen wir aber erst einmal die darzustellenden Daten samt Schluesseln, um sie den passenden Regionen zuordnen zu koennen.

Die Tutorials und Anleitungen, die ich durchgeackert habe, gehen von zwei Praemissen aus — entweder werden RData-Objekte aus der GADM-Datenbank verwendet, wie in diesem Tutorial ueber die Einwohnerdichte indischer Bundesstaaten. Oder es geht um ESRI-Shapefiles, die in ihrem dbf-Anhaengsel deutlich mehr Nutzdaten mitbringen als unsere Stadtteilekarte. Schoene Beispiele hierfuer finden sich auf dieser Uebersichtsseite sowie in diesem weiterreichenden Beispiel, beides von der University of Oregon, an der gerade (Fruehling 2012) offenbar eine passende Vorlesung laeuft.

Die Zuordnung von Shape und geschluesselten CSV-Dateien greife ich (vielleicht ^^) in einem Folgeartikel noch einmal auf. Stattdessen gibt es nun was ganz exklusives, eine UlmAPI-Sneak-Preview quasi: Einen nagelneuen Datensatz der Stadt, bevor er auf ulmapi.de landet. Wow!

Es handelt sich um *trommelwirbel* ein Shapefile, das neben den Schluesseln und Namen auch den Altersquotienten fuer das jeweilige Viertel beinhaltet. Wow! 😀

Der Altersquotient gibt das Verhaeltnis von Personen ab 65 zu Personen von 14–64 an und kann somit als Indikator fuer die Altersstruktur der Bevoelkerung dienen. Und das laesst sich natuerlich gut farbig darstellen 🙂

Wir fangen wieder mit unseren bisherigen Bibliotheken und dem Einlesen an:

library(sp)
library(maptools)
setwd("/media/home/opendata/altersquotient")
ulm <- readShapePoly("G_Altersquotient_311210.shp")
# Inhalte kontrollieren
names(ulm)
ulm@data

Na hoppla, da ist was schiefgegangen, oder? Die Chancen sind gross, dass hier nun etwas wie „ M\xe4hringen“ steht. Das ist aber nichts, was man nicht schnell beheben koennte — wir konvertieren die betroffenen Vektoren korrekt nach UTF-8 und ersetzen die Originale damit:

ulm@data$STT_Name <- iconv(ulm@data$STT_Name, "ISO_8859-1", "UTF-8")
ulm@data$STTV_Name <- iconv(ulm@data$STTV_Name, "ISO_8859-1", "UTF-8")

Um nun die Daten aus der Spalte ALTQU in Farben umzusetzen, verwenden wir das Paket RColorBrewer, das einige fuer Diagrammvisualisierungen praktische Farbverlaeufe mitbringt, und die Bibliothek classInt, um die Werte unseres Altersquotientenvektors zu klassieren:

library(RColorBrewer)
library(classInt)

plotvar <- ulm@data$ALTQU
nclr <- 7
plotclr <- brewer.pal(nclr,"Greens")
class <- classIntervals(plotvar, nclr, style="equal")
# class <- classIntervals(plotvar, nclr, style="quantile")
colcode <- findColours(class, plotclr)

in diesem Beispiel sind die Klassenbreiten konstant; classIntervals() laesst jedoch natuerlich auch noch andere Optionen zu.

Diese Vorbereitung reicht schon, um die oben abgebildete Karte anzuzeigen:

spplot(ulm, "ALTQU", col.regions=plotclr, at=round(class$brks, digits=2), main = "Altersquotient nach Stadtvierteln in Ulm", sub="Stand 31.12.2010 nach Daten der Stadt Ulm, cc-by-sa", lwd=.8, col="white")

Weiteres Tuning waere beispielsweise durch die Anzeige der Stadtviertelnamen moeglich, was aber angesichts der teilweise dichten Haeufung nur zur groben Orientierung taugt:

spplot(ulm, "ALTQU", col.regions=plotclr, at=round(class$brks, digits=2), main = "Altersquotient nach Stadtvierteln in Ulm", sub="Stand 31.12.2010 nach Daten der Stadt Ulm, cc-by-sa", lwd=.8, col="white", sp.layout = list("sp.text", coordinates(ulm), as.character(ulm$STTV_Name), cex=0.6))

So weit so gut…

Dieser Einstieg kratzt leider wirklich nur an der Oberflaeche — und auch die Darstellung mit spplot laesst ein wenig zu wuenschen uebrig. Ebenfalls nicht behandelt habe ich das „Problem“, Shapefiles mit ganz anderen Daten zu verknuepfen. Die verlinkten Tutorials helfen hier teilweise schon weiter — ich hoffe aber, die naechsten Tage zwischen Barcamporga und Arbeiten noch ein wenig Zeit fuer ein weiteres Posting ueber ggplot2 und weitere Beispiele hinzubekommen 🙂

Viele weitere Datensaetze und vor allem auch Visualisierungsjunkies findest du ausserdem auf dem OpenCityCamp am 12. und 13. Mai 2012 an der Uni Ulm 😉

(edit: peinliche Typos gefixt)

Zentralbank spielen

So mit das schoenste Dings am Organisieren von Uniparties: Eintrittskarten drucken. Mit faelschungserschwerenden Merkmalen und EURion und UV-Farben und Guillochen und Zeugs.

Und vor allem: Am Ende Buendel mit je 250 Karten packen, die irgendwie schon arg nach Geldbuendeln aussehen und je 1250 EUR wert sind. Das hat schon was 🙂

Gute und schlechte Visualisierungen

Seit ein paar Tagen geht eine Serie von Infografiken durchs Netz, die offenbar jede Menge Design-Awards gewonnen hat, und ich muss mich fragen: Warum eigentlich? (Hat sie das ueberhaupt?) Im Wesentlichen soll dargestellt werden, wie die Welt aussaehe, wenn man die komplette Weltbevoelkerung mit 100 Personen repraesentieren wuerde. Das ist eigentlich ganz nett, und der Vergleich ist schoen — man moege das aber richtig machen.

Snopes.com beschaeftigte sich bereits ausfuehrlich mit der E-Mail-Variante der 100-Personen-Reduktion und stellt richtigerweise fest, dass die dargestellten Begrifflichkeiten teilweise sehr schwammig sind: Ab wann ist jemand „weiss“, ab wann „nicht-weiss“? Kann man die gesamte Bevoelkerung einfach auf hetero- und homosexuelle Menschen herunterbrechen? Wo sind die B und T aus LGBT?

Davon einmal abgesehen, finde ich die Visualisierung der Zahlen (woher auch immer sie kommen) an sich alles andere als preiswuerdig. Schauen wir uns beispielsweise den Energieverbrauch an:

Kann man die Werte aufgrund der Grafik tatsaechlich in Relation setzen? Ausfuehrlich ohne die Beschriftung (die ich hier fieserweise mal wegeditiert habe)? Nicht wirklich, die Form ist zwar huebsch anzusehen, an sich aber ueberhaupt nicht interpretierbar. Insbesondere, weil die Beschriftung von 76% und 24% spricht — eine kurz ueberschlagene Pixelzaehlung aber ganz andere Zahlen ergibt.

Richtig abstrus wird es dann aber bei manchen anderen Darstellungen:

Hae? Wie viele Leute haben denn nun keinen Zugang zu sauberem Wasser? Nur die, die durch den sichtbaren Teil der Wolke repraesentiert werden? Oder geht die Wolke (so wie Wolken das oft tun) perspektivisch hinter der „sauberen“ Wolke weiter? Was soll das?

Ernsthaft? Come on…

Gut, das hat Unterhaltungswert. Wer sich ernsthaft mit (tatsaechlich praktischen) Informationsvisualisierungen beschaeftigen moechte, kann die Standardwerke von Edward Tufte, naemlich „The Visual Display of Quantitative Information“ und „Envisioning Information“ (Amazon-Referrerlinks) lesen und bekommt dort auch die genaue Erklaerung, warum Visualisierungen wie die von Ng als eigentliche Visualisierung (d.h. auch ohne Legende) eigentlich nichts taugen.

Leseempfehlung (3)

Ganz klassisches Medieninformatikthema zuerst: Welche Navigationsloesung fuer Touchgeraete (lies momentan: iPad) ist die bessere — scrollen oder durch Tabs rotieren? Es stellt sich heraus, dass diese Frage uralt ist und bereits 1987 behandelt wurde. Mehr dazu bei den informationarchitects. (via @gerritvanaaken)

Schoenes Zitat:

It’s a touch screen device. Touch SCREEN device. The fact that you touch it doesn’t mean that it’s like print. As a matter of fact it’s lightyears away from print.

A propos Print. Christian Jakubetz springt auf den Zug mit den gerade so beliebten Thesen auf und postuliert zehn Thesen zur Zukunft der Zeitung.

TLDR: Es sieht duester aus.

Stellen, an denen ich ganz besonders heftig genickt habe:

  • Die Wochenzeitung wird die neue Tageszeitung – und nicht umgekehrt
  • Die Tageszeitungen sparen sich zu Tode
  • Die Tageszeitungen vergreisen in den Redaktionen
  • Als nächstes wandert der Lokaljournalismus ins Netz ab

Wer dagegenhalten will, darf gerne bei meiner mittlerweile zwei Jahre alten Print-Wette mitmachen: 500 EUR Einsatz fuer Studierende, ueber den Einsatz von Verdienern muessten wir uns dann nochmal unterhalten.

    Und wie zur Unterstreichung der These vom abwandernden Lokaljournalismus hier ein Stueck aus der RZ ueber den neulich hier schon beschriebenen @tilman36, der mal eben mit Laptop, Webcam und UMTS zwei Stunden lang sein eigenes Sendestudio aufmachte: „Mobiles Kamera-Einsatzkommando“

    Manche setzen weiterhin auf Print und die Bedeutung der gedruckten Zeitung fuer die Bildung. Die SWP startete gestern die Serie „Wir lesen“, auf deren Projektseite mit Video ich einfach mal kommentar- und wertungslos verlinken moechte.

    Crossmedia fatal

    Die SWP hatte heute ein zweiseitiges Feature ueber Stuttgart 21 in der Printausgabe. Seite 4/5, Filetstueck also, mehrere Themen jeweils aus Sicht der Befuerworter und der Gegner argumentiert.

    Im Layout sieht das klasse aus. Die Texte aussen um erlaeuternde Grafiken zum raeumlichen Zusammenhang in Stuttgart selbst, zur Neubaustrecke Ulm-Wendlingen, eine Zeitleiste der Entscheidungen, Diagramme… wunderhuebsch.

    Und was davon wurde fuer Online weitergesponnen, dem Medium entsprechend aufbereitet und eingestellt?

    NICHTS!

    Es gibt eine Einstiegsseite mit Bild, Teaser und Link auf eine Uebersichtsseite, auf der lieblos Links zu den einzelnen Texten geklatscht sind, die Texte sind lieblos in neue Artikel geklatscht, es gibt keine Karte, keine Grafik, kein Bild, nicht mal recyclete Klickstrecken, kurz gesagt, es gibt einen SCHEISSDRECK zu sehen.

    Bis auf die rechte Spalte natuerlich, samt Twitter und Facebook und RSS, und Wetterbericht und Branchenbuch, und Nachtleben in Ulm, und Todesanzeigen.

    Ich wuerde ja normal gar nichts sagen — ich weiss mittlerweile aus erster Hand, wie wenig Zeit man in einer Onlineredaktion neben Content Management und dem normalen Tagesgeschaeft fuer Sonderaktionen hat; dass man nicht mal eben ein Flashpaket aus der Luft zaubern kann, und ich weiss auch, in welchen Parallelwelten Print- und Onlineredaktion oft nebeneinander her arbeiten. Aber gestern abend ging es in einem Gespraech um genau solche Punkte, und waehrend ich auf bislang nicht genutzte Erzaehlformen, Experimente und volle Ausnutzung des Mediums aus war, hoerte ich immer nur „monetarisieren“, „kein Geld“ und sonstiges Zeug, das mir Gaensehaut bereitete.

    Ich glaube, ich geh mich jetzt besaufen.

    Datenvisualisierung fuer Audiophile (und so)

    Mozy war mir bislang vollkommen unbekannt — das ist wohl so ein Backupdienst a la Dropbox, und aehnlich wie ich Dropbox bislang nicht sinnvoll genutzt habe (sorry Markus), wird das wohl auch mit Mozy und mir nix werden.

    mozblog

    Mozy hat aber auch ein Blog, und dort gibt es immer wieder mal nette Infografiken. Das dort visualisierte Wissen ist zwar nicht immer sonderlich nuetzlich, aber es sieht verdammt huebsch aus. Besonders die Abhandlung ueber physikalischen Speicher vs. digitalen Speicher sollte man sich mal ansehen, wenn man ein wenig Musse hat.

    Du sollst keine charakterlosen Schriften benutzen

    Ich habe mir lange ueberlegt, ob ich eine Diskussion vom Zaun brechen will, und habe mich dagegen entschieden. Weil ich das aber loswerden moechte, landet das Thema eben hier. Dafuer hat man ja so ein Blog.

    bkMan stelle sich einmal jemanden aus der Kreativbranche vor. Ihr wisst schon welche Ecke. Das taeglich‘ Brot besteht daraus, sich Ideen aus dem Hirn zu saugen, handwerklich solide umzusetzen und dabei den Anspruch zu bewahren, letztlich qualitativ hoechstwertige und aesthetische Produkte zu liefern. Richtig gute Arbeit also. Natuerlich spezialisiert man sich in irgendeine Richtung, schliesslich kann nicht jeder alles gleich gut. Muss ja auch keiner.

    Was ich nun nicht verstehe: Ein Fotograf wuerde angesichts eines Grafikers oder Typographen, der zur Illustration seiner Arbeit einfach nur miese Bilder macht, die Stirn runzeln. Sich vielleicht fragen, warum der Kerl nicht einfach einen Deal mit nem befreundeten Fotografen macht — der eine macht dem anderen die Bilder, dafuer gibts im Gegenzug eine Corporate Identity. Eine Hand waescht die andere, jeder hat ein hochwertiges Gesamtkonzept.

    lhUmgekehrt scheint das aber kaum einen Fotografen zu jucken (Vorweg: Ich bin keiner. Ich bin Hobbyknipser, und das ist gut so.)

    Was ich da schon gesehen habe, rollt mir regelmaessig die Fussnaegel auf. Richtig gute Fotos werden von dahingerotzten Wortmarken schlicht versaut. Richtig gern scheint man unter Fotografen zwei ganz und gar nicht zueinander passende Schriftschnitte aufeinanderzuklatschen, und generell scheint man sich auch wenig Gedanken darueber zu machen, welchen Charakter die Schrift der Marke denn ueberhaupt ausdruecken soll.

    nikeJetzt ist klar, dass man als brotloser Kuenstler in der Regel nicht die Kohle locker hat, um mal eben in der Bergmannstrasse vorbeizuspazieren und den Fontshop leerzukaufen. Das ist aber kein Grund, abgedroschene und ausgelutschte Schriftarten zu verwenden oder zwei nicht zueinander passenden Schriften zu kombinieren. Quasi alle Windows-Standardschriften sollten (fast) prinzipiell ein No-Go sein.

    Nicht einmal unbedingt, weil sie alle schlecht waeren — das sind sie naemlich nicht (alle). Die meisten sind aber einfach furchtbar ausgelutscht. Sie finden sich auf dem Briefkopf des Baeckers um die Ecke (der sich keinen Designer leisten moechte) gleichermassen wie beim kleinen Selbstaendigen gegenueber (der sich keinen Designer leisten kann) und den kostenlosen Vistaprint-Visitenkarten mit den haesslichen Verzierungen des Nachbarn (der nicht mal weiss, wie Design geschrieben wird).

    Verdana zum Beispiel, als Bildschirmschrift konzipiert und in tausenden seltsamen Drucksachen missbraucht. Am besten per WordArt. Oder mein persoenlicher Hasskandidat Arial, ein schlechter Abklatsch der (meines Erachtens ihrerseits abgelutschten) Helvetica, und durch die Erhebung Erniedrigung zur Windows-Standardschrift seither in hunderttausenden schlecht gesetzten Eigendrucksachen quasi die Ikone des schlechten Geschmacks und des Billig-Looks. Mark Simonson beschreibt das so:

    Arial is looked down on as a not-very-faithful imitation of a typeface that is no longer fashionable. It has what you might call a “low-end stigma.”

    Um mal in der Fotografendenkweise zu bleiben: Arial ist das typographische Gegenstueck zum ausgelutschten Akt. Ihr wisst schon, der, in dem das Modell den String mit dem Absatz der High Heels anlupft, und am Absatz nachtraeglich in Photoshop ein Lensflare eingefuegt wurde. Und im Hintergrund ist ne Taurolle. Oder ein durchbrennender Gluehlampenfaden. Einfach das, was an sich gar nicht mal so schlimm waere — dadurch, dass es aber tausend begabte wie unbegabte Leute nachgemacht haben, tut es einfach mittlerweile in den Augen weh. Es gibt also einen Grund, warum keine vernuenftige Firma ihr Logo in Arial setzt. Deswegen sollte das auch niemand anders tun. Besonders nicht, wenn man selbst aus der kreativen Ecke kommt.

    Gratis-Tipps fuer Gratis-Fonts, die etwas gleichsehen:

    • Museo Sans als moderne Futura-artige fuer die Sans-Serif-Fanatiker
    • Tallys als eigenwillige Serifenantiqua
    • Cardo — edel edel, an die Bembo angelehnt, furchtbar gut ausgebaut, aber „nur“ ein Schnitt.
    • Day Roman — wuerde ich vermutlich selbst waehlen, wenn ich einen freien Font fuer ein derartiges Logo verwenden muesste.

    Es lohnt sich auch, immer mal wieder beim Fontblog bzw. Fontshop reinzusehen, wenn einzelne Schnitte verschiedener Schriften fuer lau verklopft werden. Und ja, es ist glaube ich schon gut, dass die abgebildeten Marken in Wirklichkeit nicht in Arial gesetzt werden.