Problem mit epsdice und Sweave

Tabellen und Grafiken erstellen und anordnen


sushifunk

Beitrag von sushifunk »

Ich habe mit dem Paket epsdice das Problem, dass bei einem User
\epsdice{3}
zu einem völlig verzerrten Würfel führt, der die ganze Seitenbreite ausfüllt. Unter anderen Usern auf meinem Computer tritt dieses Problem nicht auf. Ich habe das Paket epsdice auch nochmal frisch aus dem Netz geholt und unter

~/Library/texfm/tex/latex/epsdice

abgespeichert und dann
sudo latex epsdice.ins
sudo texhash
in die Konsole getippt. Ich weiß nun nicht, in welcher Richtung das Problem liegt.

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Mach doch mal ein Minimalbeispiel und sag genau, welches Ergebnis du erwartest/wünscht, dann probiere ich es auf meinem Mac und vielleicht können die Windows/Linux/...-Leute es auch mal versuchen.

sushifunk

Beitrag von sushifunk »

Es scheint an Sweave zu liegen. Ohne Sweave wird der Würfel ganz normal angezeigt, also in etwa so groß wie ein Buchstabe. Mit Sweave zusammen wird der Würfel völlig verzerrt bis zur Unkenntlichkeit (kann man als Gast ein Screenshot hochladen?).

Da ich in meinen Skripten ständig mit Sweave arbeite, um R-Programme und R-Auswertungen einzubinden, bin ich auf Sweave angewiesen....
\documentclass[a4paper, 10pt]{scrartcl}


\usepackage[ngerman]{babel}
\usepackage[applemac]{inputenc}

\usepackage{epsdice}
\usepackage{Sweave}

\begin{document}


\epsdice{3}

\end{document}

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Was passiert, wenn du Sweave zuerst lädst? Könnte sein, das durch dieses Paket ein Befehl aus epsdice umdefiniert wird, was dann zu einem Fehler führt.

Dein Beispiel kann ich nicht testen, da ich Sweave nicht installiert habe und es dass auch nicht einfach als sty-Datei irgendwo zu geben scheint...

sushifunk

Beitrag von sushifunk »

Sweave.sty gibt es hier:

http://www.biostat.jhsph.edu/~rpeng/ENAR2009/Sweave.sty

Es genügt den dortigen Text unter Sweave.sty im Arbeitsverzeichnis des Minimalbeispiels reinzusetzen.

Die Reihenfolge der Packages hat das Problem auch nicht gelöst.

Vielleicht sollte ich das Problem mit einem aussagekräftigeren Titel in einem geeigneten Unterforum nochmal posten. Ich weiss aber nicht mal, worunter das Problem fällt. Hast Du eine Idee?

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Ich hab das Problem gefunden:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{Sweave}{}

\RequirePackage{ifthen}
\newboolean{Sweave@gin}
\setboolean{Sweave@gin}{true}
\newboolean{Sweave@ae}
\setboolean{Sweave@ae}{true}

\DeclareOption{nogin}{\setboolean{Sweave@gin}{false}}
\DeclareOption{noae}{\setboolean{Sweave@ae}{false}}
\ProcessOptions

\RequirePackage{graphicx,fancyvrb}
\IfFileExists{upquote.sty}{\RequirePackage{upquote}}{}

%in der folgenden Zeile wird eine Länge verändert, die sich auch auf epsdice auswirkt.
\ifthenelse{\boolean{Sweave@gin}}{\setkeys{Gin}{width=0.8\textwidth}}{}%
\ifthenelse{\boolean{Sweave@ae}}{%
  \RequirePackage[T1]{fontenc}  
  \RequirePackage{ae}
}{}%

\DefineVerbatimEnvironment{Sinput}{Verbatim}{fontshape=sl}
\DefineVerbatimEnvironment{Soutput}{Verbatim}{}
\DefineVerbatimEnvironment{Scode}{Verbatim}{fontshape=sl}

\newenvironment{Schunk}{}{}

\newcommand{\Sconcordance}[1]{%
  \ifx\pdfoutput\undefined%
  \csname newcount\endcsname\pdfoutput\fi%
  \ifcase\pdfoutput\special{#1}%
  \else\immediate\pdfobj{#1}\fi}
Lösen kann ich es aber leider nicht... aber immerhin ist es jetzt lokalisiert

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Wenn man Sweave mit der option nogin lädt, scheint es zu gehen, ich weiß allerdings nicht, was diese Option noch alles bewirkt, wenn es ein Manual gibt, wird das ja darin stehen...

Nerd 032F

Beitrag von Nerd 032F »

Sweave hat geschrieben:
\newcommand{\Sconcordance}[1]{%
  \ifx\pdfoutput\undefined%
  \csname newcount\endcsname\pdfoutput\fi%
  \ifcase\pdfoutput\special{#1}%
  \else\immediate\pdfobj{#1}\fi}
Das stammt übrigens aus der Mottenkiste. Mit \pdfoutput herumzupfuschen ist - naja, lassen wir die Kraftausdrücke. Wenn das überhaupt sinnvoll sein soll, dann wohl so:
\RequirePackage{ifpdf}
\newcommand{\Sconcordance}[1]{%
  \ifpdf\pdfobj{#1}\else\special{#1}\fi
}
Das Paket ae sollte man auch besser nicht laden. Stattdessen ist das Paket lmodern vorzuziehen. Ich vermute mal, das einzig sinnvolle an Sweave sind die Umgebungen Sinput, Soutput, Scode und Schunk, die da definiert werden. Wobei ich nicht genau weiß, wofür die benötigt werden und ob man eventuell mit einem Paket wie listings die Umgebungen noch aufpeppen könnte.

sushifunk

Beitrag von sushifunk »

Das kann ja wohl nicht wahr sein. Ihr habt das Problem jetzt nicht wirklich binnen weniger Stunden gelöst, oder? FETTESTEN Dank! Wie geil ist das denn....

Mit der Option 'nogin' scheint jetzt alles wunderbar zu klappen. Zumindest sehe ich im Dokument keinen Fehler - auch nicht bei den doch eher sensiblen mehrdimensionalen Grafiken, die mit R gerechnet werden...

sushifunk

Beitrag von sushifunk »

Das kann ja wohl nicht wahr sein. Ihr habt das Problem jetzt nicht wirklich binnen weniger Stunden gelöst, oder? FETTESTEN Dank! Wie geil ist das denn....

Mit der Option 'nogin' scheint jetzt alles wunderbar zu klappen. Zumindest sehe ich im Dokument keinen Fehler - auch nicht bei den doch eher sensiblen mehrdimensionalen Grafiken, die mit R gerechnet werden...

Antworten