Ich bekomme die Schrift an der y-Achse nicht kleiner; bzgl. dr Vorgabe width=3.5cm, height=2.5cm, - diese Maße soll das Bild insgesamt haben :(

SOLL: Ich möchte in etwa diesen Style erreichen (Wolfram mathematica).

alt text

IST:

alt text

Open in Online-Editor
\documentclass[border=2pt, varwidth]{standalone}
\usepackage{pgfplots}
\usepackage{filecontents}
\begin{filecontents}{data.csv}
5   0   0.59049 0.32768 0.23730 0.16807 0.07776 0.03125
5   1   0.91854 0.73728 0.63281 0.52822 0.33696 0.18750
5   2   0.99144 0.94208 0.89648 0.83692 0.68256 0.50000
5   3   0.99954 0.99328 0.98438 0.96922 0.91296 0.81250
5   4   0.99999 0.99968 0.99902 0.99757 0.98976 0.96875
\end{filecontents}

\makeatletter
\newcommand{\srcsize}{\@setfontsize{\srcsize}{2pt}{5pt}}
\makeatother
\usepackage{lipsum}

\begin{document}

\tiny

\lipsum[1]

\bigskip

\srcsize

\lipsum[1]

\pgfplotsset{mystyle/.style={%
  % allgemein
%  ybar interval,%=10pt, ?  % Balkendiagramm
  /pgf/number format/use comma, % Kommas als Zahlentrennzeichen
  % x und y
  axis lines = middle,% < Achsenstil so früh wie möglich einstellen - er ändert weitere Optionen
  axis line style={-latex}, 
  ticklabel style = {font=\tiny},
  major tick length =2pt, 
  % x
  xmin=0,
  xmax=5, 
  xtick=data,
%  hide obscured x ticks=false,% <- zum Anzeigen des Ticklabels 0 % TUT NET
  xlabel style={anchor=north, font=\tiny,},
  enlarge x limits={abs=10pt,upper},% <- damit die Pfeilspitze an der y-Achse sichtbar ist
  xticklabel style = {yshift=1.5pt, font=\srcsize},
  % y
  ymin=0,
  ymax=1,
  ytick = {0.2, 0.4, ..., 1},
  ytickmax=1,% <- kein Tick oberhalb von y=.9
  ylabel style={anchor=north west, yshift=1ex, font=\tiny,},
  enlarge y limits={abs=10pt,upper},
  yticklabel style = {xshift=2pt, font=\srcsize},
}}%

\begin{tikzpicture}[scale=1.0]
\begin{axis}[mystyle, 
  width=3.5cm, height=2.5cm,
  xlabel={k},
  ylabel={$P(X \leq k)$},
]
  \addplot[draw=gray, thin,  mark=*, mark size=1.0075pt, mark options = {draw=black, fill=white, thin}] table [x index=1, y index=6] {data.csv};
   \addplot[draw=black, ultra thin, densely dashed, domain=0:5.5] {1};
  \end{axis} 
\end{tikzpicture}
\end{document}

gefragt 22 Jan, 20:25

cis's gravatar image

cis
5.4k860167
Akzeptiert: 68%

bearbeitet 23 Jan, 04:43

Henri's gravatar image

Henri
10.0k31730


Das Problem ist, dass der Computer Modern nur in festen Größen gibt. Diese sind auch nicht gleich für alle Schnitte. So gibt es zum Beispiel Computer Modern Roman (cmr) in den Größen 5pt, 6pt, 7pt, 8pt, 9pt, 10pt, 12pt und 17pt. Dahingegen ist Computer Modern Teletype (cmtt) nur in den Größen 8pt, 9pt, 10pt und 12pt verfügbar. Man kann diese Schriften auch in skalierten Größen laden, hier in plain TeX

Open in Online-Editor
\font\tenrm=cmr10
\font\elevenrm=cmr10 at 11pt
\font\twelverm=cmr12

\tenrm H%
\elevenrm H%
\twelverm H

\bye

alt text

Die Schriftgröße 11pt gibt es eigentlich gar nicht, kann aber wie gezeigt emuliert werden. LaTeX lädt in den Standardeinstellungen Computer Modern in den Designgrößen und keinen anderen. Das heißt alle Größen, die nicht verfügbar sind werden auf die nächst nahste gerundet. In deinem Fall wird 2pt auf 5pt aufgerundet. Es gibt aber Abhilfe.

Du hast zwei Möglichkeiten:

  1. Man kann statt der original Computer Modern Schrift, die skalierbare European Computer Modern laden (stimmt nicht ganz, aber das ist zu lang um es zu erklären. Siehe Anleitung). Dies geht mittels \RequirePackage{fix-cm} welches vor \documentclass stehen sollte.
  2. Irgendeine skalierbare Schrift laden, die für Skalierbarkeit designed wurde, wie zum Beispiel Latin Modern (\usepackage{lmodern}).
Permanenter link

beantwortet 23 Jan, 05:00

Henri's gravatar image

Henri
10.0k31730

Aja, gut... ich habe mich jetzt so beholfen:

% Skalierbare Schrift \usepackage{lmodern} \newcommand\mini{\fontsize{2.5pt}{3pt}\selectfont}

Damit klappt es wunderbar.

Allerdings weiß ich bei \fontsize{size}{skip} immer nicht, was man bei skip am besten einstellen sollte (?).

(23 Jan, 12:02) cis

Kurze Frage: Ist das so sinnvoll?

\usepackage{lmodern} \newcommand\mini{\fontsize{3.00pt}{\baselineskip}\selectfont}

(25 Jan, 16:08) cis
1

@cis Es ist schon eine Wissenschaft für sich den richtigen Zeilenabstand zu wählen, aber das ist definitiv zu viel. Sowas wie \newcommand\mini{\fontsize{3pt}{4pt}\selectfont} erscheint mir eher angebracht. Für deine Anwendung dürfte es aber sowieso egal sein, weil hier im Beispiel nirgends mehrzeiliger Text auftritt.

(25 Jan, 16:26) Henri

Naja, ich will das schon gescheit machen. Das werde ich sicher noch öfter brauchen.

(26 Jan, 00:27) cis

Aufbauend auf der AW von @Henri:

alt text

Open in Online-Editor
\documentclass[varwidth, border=2pt]{standalone}
%\documentclass[paper=a5]{scrartcl}
\usepackage{microtype}  
%\usepackage{bera}

\usepackage{lmodern}
            \newcommand\mini{\fontsize{3.00pt}{4.00pt}\selectfont}
        %\fontsize{<size>}{<skip>}

\usepackage{pgffor}
\begin{document}

{\mini  Meine Schriftgr{\"o}{\ss}e} \bigskip

\def\Text{Das ist ein Text.}
\foreach \p in {0.5,0.75,1,2,...,19,19.3}{%%
\fontsize{\p pt}{\p pt}\selectfont \Text \,--\,  Schriftgr{\"o}{\ss}e: \p pt \par
}%%
\end{document}
Permanenter link

beantwortet 26 Jan, 00:54

cis's gravatar image

cis
5.4k860167

bearbeitet 26 Jan, 02:18

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×160

Frage gestellt: 22 Jan, 20:25

Frage wurde angeschaut: 966 Mal

Zuletzt aktualisiert: 26 Jan, 02:18