Zusatzpakete in Emacs

 

Funktionelle, reproduzierbare Anwendungen unter Emacs – etwa statistische Berechnungen mit R oder Diagrammerstellungen mit Gnuplot erfordern die Installation von Zusatzpaketen. Ich bin dabei wie folgt vorgegangen: Weiterlesen ..

Fußnoten:

1

Anderswo kostet allein ein Textexpanderprogramm im Abo 40 Dollar jährlich. In Org Mode bekommt man das gratis, wenn man beispielsweise das Paket ,,YASnippet“ aktiviert.

Balkendiagramme mit Gnuplot

 

Es geht weiter mit den Basics der reproduzierbaren Diagrammerstellung mit Gnuplot in Emacs Org-mode. In diesem Beitrag wird Schritt für Schritt gezeigt, wie Balkendiagramme erstellt und modifiziert werden können. Zuerst zeige ich Beispiele für reine Balkendiagramme, danach kommen Beispiele für die Kombination mit anderen Diagrammtypen. Die Datenbasis wird als Tabelle mit Umsatz-Ist und -Sollwerten wiederum in Org-mode selbst angelegt. Im ersten Teil werden die Datentabelle und der Code mit Erläuterungen dargestellt. Alternativ können ebenso externe Datenfiles ausgewertet werden, was ich in einem späteren Beitrag noch anhand weiterer Beispiele zeigen werde. Erläuterungen im Code werden übrigens mit einer Raute (#) eingeleitet und sind selbst nicht Bestandteil der Programmausführung. Weiterlesen ..

 

Mit Python Grafik drehen

Bedarf für Anwendung

Gnuplot ist ein mächtiges Programm zur Analyse und Visualisierung statistischer Daten,
welches direkt aus Emacs Org-mode heraus mit Anweisungen in Plaintext bedient werden kann.

Leider bietet Gnuplot von Haus aus nicht die Möglichkeit zur Ausgabe vertikaler
Balkendiagramme an. Balken werden nur horizontal, also nebeneinander auf der x-Achse
angeordnet. Diese Darstellungsform reicht nicht aus, insbesondere dann nicht, wenn man
Geschäftsgrafiken nach professionellen Standards erstellen will, wie sie beispielsweise
Edward R. Tufte1 oder fortführend Holger Gerths und Rolf Hichert2 aufstellten.

Balken auf der horizontalen x-Achse angeordnet werden danach nur für zeitliche Abläufe
eingesetzt. Die x-Achse ist ein Zeitstrahl. Eine andere Verwendung – etwa vergleichende
Balken für Daten von Subgruppen – ist auf horizontaler Ebene nicht gestattet. Solche
vergleichende Darstellungen ohne Zeitbezug sind ausschließlich vertikal, also an der
y-Achse übereinander angeordneten Balken vorbehalten.

Die Lösung: Balkendiagramm um 90 Grad drehen

Ein Diagramm mit vertikal angeordneten Balken erhält man im Grundsatz, indem man ein
Diagramm mit horizontaler Balkenanordnung einfach um 90 Grad nach links oder rechts
dreht. Mit so einer Drehung des gesamten Diagramms kippen allerdings auch die
Beschriftungen um 90 Grad auf die Seite. Damit die Ansicht wieder stimmt,. muss man also
vorher die Beschriftungen (zurück-)drehen. 90 Grad nach links und dann 90 Grad nach rechts
gekippt, ergibt effektiv 0 Grad Drehung.

Dieses Drehen der Beschriftungen lässt Gnuplot intern zu. Ich zeige in meinem Artikel
,,Umsatztabelle plotten mit Balken“ einige Beispiele dazu auf.

Schwieriger wird es dann mit dem Drehen des Balkendiagramms als Ganzes. Gnuplot selbst
kann das nicht, zumindest habe ich in der Literatur und im Netz dazu keine Hinweise
gefunden.

Grundsätzlich bieten sich in Org-mode zwei Konzepte zur Umgehung an: Möglichkeit 1 besteht
darin, dass man die mit Gnuplot erzeugten und gespeicherten Balkendiagramme unverändert
lässt und erst beim Export der Org-mode Datei in die Ausgabeformate PDF bzw. HTML
dreht. Exportiert man nach PDF, ist über LaTex mit dem Befehl #+ATTR_LATEX: :options
angle=90
möglich. Will man dagegen nach HTML exportieren, bleibt dieser Latex-Befehl
,,angle=90“ wirkungslos. Man könnte dann sicher mit CSS etwas machen, was die Sache
allerdings weiter verkompliziert. Vor allem wirkt nachteilig, dass dann der
Pogrammcode in Org-mode auseinanderfällt. Man müsste dann für jedes Format eine
eigene Ausgaberoutine schreiben, einmal mit LaTeX (PDF-Export) und einmal mit CSS
(HTML-Export). Von der ursprünglichen Universalität von Org-Mode bliebe nicht viel übrig.

Ich favorisiere deshalb einen anderen Ansatz: Dieser besteht darin, das jeweils in Gnuplot
erzeugte Balkendiagramm mit horizontale Ausrichtung mit einem anderen Programm zu öffnen,
zu drehen und dann erneut abzuspeichern. Wenn dann dieses bereits gedrehte Diagramm mit
vertikal angeordneten Balken in Org-mode geladen wird, muss es nicht noch einmal gedreht
werden, sondern kann so (gedreht), wie es ist, ohne weitere Eingriffe exportiert werden,
als PDF oder als HTML.

Diagramme drehen mit Python

Es gibt eine ganze Reihe von Programmen, mit denen man Grafikdateien öffnen, die
geöffneten Grafiken drehen und schließlich wieder speichern kann. Jedes Grafikprogramm
kann das. Das Problem dabei ist, dass dann die durchgehende Steuerung der Ausgabe aus
Org-mode heraus unterbrochen wird. Man müsste dann in Org-Mode ein Programm zur
Datenanalyse bis zur Diagrammerstellung ausführen, dann ein externes Programm starten, in
dem die Grafik gedreht wird, und dann wieder Org-mode starten, um die gedrehten Grafiken
als HTML oder PDF zu exportieren. Auch dieser Weg erscheint zu umständlich.

Die Alternative dazu wäre die Nutzung eines Programms, welches wie Gnuplot auch direkt aus
Org-mode heraus aufgerufen und ausgeführt werden kann. Python ist dazu in der
Lage. Folgender Workflow zur durchgängigen Erstellung vertikaler Balkendiagramme in
Org-Mode folgt daraus:

  1. Datenanalyse mit Anlage und Speicherung eines horizontal angeordneten Balkendiagramms
    mit ggf. gedrehten Beschriftungen und angepassten Diagrammgrößen in Gnuplot
  2. Öffnen, Drehen und erneutes Speichern dieses dann vertikal angeordneten Balkendiagramms
    in Python
  3. Einlesen dieses gedrehten Balkendiagramms in Org-mode für den Export in HTML bzw. PDF

Python-Paket ,,Pillow“

Python benötigt zur Ausführung grafischer Optionen die ,,Image Library Pillow“. Diese
muss einmalig installiert werden. Unter Mac OS X 10.11.2 waren dazu im Terminal-Fenster
folgende Befehle erforderlich:3

Terminal:

~ user$ sudo pip install pillow
Password: ******
~ user$ sudo su
SH-3.2# easy_install pip
SH-3.2# xcode-select --install
SH-3.2# pip install --no-index -f http://dist.plone.org/thirdparty/ -U PIL

Python starten:

SH-3.2# Python
>>> from PIL import Image

Jetzt ist das Image-Paket von Python einsatzbereit. Es folgt die Drehung einer Grafik als
Beispiel:

>>> im1 = Image.open("Umsatztabelle27.png")
>>> im1.show()
>>> im2=im1.rotate(270)
>>> im2.save("Umsatztabelle27gedreht.png")
>>> im2.show()

Linkempfehlungen:

 Fußnoten:

1 Edward Tufte: The Visual Display of Quantitative Information. 2001.

2 Rolf Hichert Holger Gerths: Geschäftsdiagramme mit Excel nach den SUCCESS-Regeln  gestalten. 2013.

3 Eine Installation von XCode ist Voraussetzung und muss vorher ggf. ausgeführt werden.

Umlaute und Sonderzeichen in Gnuplot

Umlaute und Sonderzeichen in Gnuplot

Führt man Gnuplot aus Emacs Org-mode heraus aus, werden deutsche Umlaute und Sonderzeichen nicht bzw. nicht richtig wiedergegeben. Für eine korrekte Ausgabe sind zwei Schritte erforderlich: Weiterlesen ..

Gnuplot: Umsatztabelle plotten mit Linien und Punkten

Umsatztabelle plotten mit Linien und Punkten

In diesem Beispiel wird in Emacs Org-mode eine einfache Umsatztabelle angelegt und
anschließende mit Gnuplot 4 mal hintereinander geplottet. Der Unterschied zwischen den
Grafiken besteht in der Darstellung der Datenpunkte. Weiterlesen ..

Reproduzierbare Unternehmensanalyse (Reproducible Research)

Unternehmensanalyse lässt sich verstehen als systematische Erfassung und Bewertung
empirischer Sachverhalte in Organisationen, die einer wirtschaftlichen Tätigkeit
nachgehen.

Um diese Definition operationalisierbar zu gestalten sind folgende Fragen zu beantworten:

  1. Was ist unter ,,empirisch“ zu verstehen?
  2. Was bedeutet ,,systematisch“?
  3. Welche ,,Sachverhalte“ sind relevant?
Weiterlesen ..

1 Atteslander: Methoden der empirischen Sozialforschung. 1984, S. 16.

2 Bortz\Döring: Forschungsmethoden und Evaluation für Human-und Sozialwissenschaftler: Limitierte Sonderausgabe. 2007.

3 Gutenberg: Grundlagen der Betriebswirtschaftslehre: Band 1: Die Produktion. 1954, S. 379.

Markdown unter Emacs: Eine echte Workflow-Option?

Wozu Markdown?

Der Sinn von Markdown als Auszeichnungssprache besteht in der maximalen Vereinfachung des Editierens leicht lesbarer Texte. Einfache Formatierungsanweisungen werden direkt in den
laufenden Text geschrieben, ohne dass seine Lesbarkeit darunter nennenswert leidet. Veröffentlichungen im Internet – wie dieser Beitrag hier – entsprechen Markdown besonders, weil der verlustfreie Export nach HTML integraler Bestandteil ist. Keine überfrachteten Symbolleisten, keine verschachtelten Menüs, keine endlosen Prozeduren einen Text filigran zu positionieren oder kunterbunt in 1000 Schriftarten zu formatieren: Konzentration auf den Inhalt bei sachlicher und zugleich ansprechender Form nach dem Export in HTML oder auch in andere Formate wie PDF, RTF, Word oder LaTeX. Markdown ist Reduzierung auf die wesentlichen Elemente des Schreibens: Basics zur Hervorhebung von Text (fett, kursiv), Überschriften zur Gliederung eines Dokuments, Absätze, Zitate, Codeblöcke, Fußnoten, schlichte Tabellen, die Einbindung von Links und Grafiken – mehr braucht es meist nicht. Fließtext ohne Schnickschnack schreiben, bei permanenter, vielleicht sogar lernfähiger Rechtschreibprüfung als Luxus, das ist die Königsdisziplin für Markdown-Anwender. Weiterlesen ..


  1. GPN12 = Gulaschprogrammiernacht 2012 in Karlsruhe  ↩

Spams ohne Ende! Schränke Kommentarfunktion ein! Wie Sie dennoch kommentieren können.

Liebe Besucher meiner Homepage,

die letzten Monate war ich total in Entwicklungsarbeiten eingespannt, über die ich noch berichten werde. Mir fehlten Zeit und Aufmerksamkeit für meinen Blog.

Heute nun loggte ich mich nach längerem wieder auf meiner eigenen Hompage ein. Sagenhaft, was ich dabei feststellen musste: Obwohl ich keine Beiträge veröffentlichte wurden mir 6.085
(sechtausendfünfundachtzig!) Kommentare gepostet.

Alles Spams! Nur Mist, aus aller Welt: beispielsweise Schwachsinn aus Idaho und Los Angeles, oder Viagrawerbung aus Saudi-Arabien. Wer das noch nicht gesehen hat, dem gebe ich zur Kostprobe unten ein paar kürzere Beispiele wieder. Offenbar operieren hier weltweit irgendwelche Witzbolde, die nichts besseres zu tun haben, als die Internetseiten anderer maschinell zu hacken und vollzumüllen. Das konterkariert die Idee und die Möglichkeiten des ,,World Wide Web“!

Ich muss auf diese Angriffe reagieren. Deshalb schalte ich alle öffentlich frei zugänglichen Kommentarfunktionen auf meiner Internetseite ab. Zum Glück gibt es im Internet nicht nur Bösewichte, sondern auch Hilfe, wie man so eine Sperre in WordPress technisch lösen kann, beispielsweise hier oder hier.. Ich will das Problem damit an der Wurzel packen und verzichte auf irgendwelche Tools zur Spamabwehr, bei denen man doch immer wieder manuell nachsorgen muss, weil sie nicht alle Spams erwischen.

Selbstverständlich bin ich weiterhin an ,,echten“ Wortmeldungen zu den Themen meiner Beiträge interessiert. Schreiben Sie mir am besten ein paar Zeilen, über meine Kontaktseite als E-Mail oder gern so richtig auf Papier per Briefpost.

Im Gegenzug schicke ich Ihnen dann einen Zugangscode, mit dem Sie sich auf meiner Homepage einloggen können. Als angemeldeter Besucher steht Ihnen dann die Kommentarfunktion wieder zur Verfügung.

Vielen Dank!

Weiterlesen ..

LaTeX-Formeln in Scrivener

Um Formeln in Scrivener zu schreiben und danach in LaTeX setzen zu lassen, bedarf es folgender Schrittfolge:

  1. Formel in LaTeX-Editor schreiben (Empfehlung: Daum Equation Editor; möglich sind auch andere, auch online)
  2. LaTeX-Formelstring kopieren
  3. Scrivener aktivieren
  4. kopierten LaTeX-Formelstring einfügen
  5. Formelstring in doppelte Dollarzeichen setzen
  6. Sonderfälle über beginn {equation}, {align} oder {gather}: mit nur einem Dollarzeichen einkleiden
  7. in Scrivener zusammenstellen: MultiMarkdown -> LaTeX (.tex)
  8. dann in LaTeX-Editor setzen lassen und als PDF ausgeben
Weiterlesen ..

Literaturverwaltung mit BibDesk in Scrivener

Zettel: Literaturverwaltung, BibDesk, Scrivener

© HS, Stand: 14.02.2014


Scrivener ist ein wunderbares Programm für Autoren. Seine Stärken spielt es vor allem bei umfangreicheren Stoffen aus, die es zu recherchieren und in Strukturen zu bringen gilt.[1]

Im Umgang mit Werken anderer steht ein Autor vor der Herausforderung die von ihm benutzten Quellen ordentlich zu referenzieren. Das gilt nicht nur für Doktoranden, wenngleich der mediale Hype derzeit diesen Eindruck erwecken könnte.

Mehr lesen ..

Zettelhinweise

Zettel sind universal. Sie sind grenzenlos. Sie sind frei aller inhaltlichen Beschränkungen, wie unsere Erfahrungen und unser Denken auch. Sie unterstützen unser Gedächtnis. Zettel begleiten uns, auf der Arbeit, in der Freizeit, im ganzen Leben.

Zettel erscheinen aber immer auch als etwas Provisorisches, Unfertiges. Erfahrungsberichte etwa, wie ich das eine oder andere technische Soft- oder Hardwareproblem für mich lösen konnte, erheben keinerlei Anspruch auf Allgemeingültigkeit. Was auf meinen Computern läuft, muss bei anderen noch lange nicht funktionieren. Deshalb kann ich für solche Versuche auch keinerlei Haftung übernehmen, so sorgfältig ich meine Zettelnotizen auch verfasse, bevor ich sie online stelle. Ich bitte das zu beachten, bevor sich der eine oder andere meiner Leser daran machen sollte, meine Lösungsideen praktisch an der eigenen Peripherie nachzuvollziehen.

Mehr zu den Themen „Zettel” und „Zettelkasten” findet sich (bald) auf meiner Homepage.

zurück


  1. vgl. dazu z.B.: Lamprecht, Stephan. Scrivener Texte professionell konzipieren, schreiben und veröffentlichen. Heidelberg; München; Landsberg; Frechen; Hamburg: mitp, 2013.  ↩
  2. s. Kettell, Jennifer Ackerman. Scrivener Absolute Beginner’s Guide. Indianapolis, Ind.: Que, 2013.  ↩

ZN01114