Wie stelle ich bei pgfplots ein, welche Tabellenspalte geplottet wird? Scheints wird die 2. Spalte unvollständig geplottet (mit 1. Spalte als x-Werte). Open in Online-Editor
\documentclass[border=2pt, varwidth]{standalone} %\documentclass[]{article} \usepackage{pgfplots} \usepackage{pgfplotstable} \usepackage{amsmath, amssymb, amsfonts} \usepackage{filecontents} \begin{filecontents}{data.csv} 0 0.5905 0.3277 0.2373 0.1681 0.0778 0.0313 1 0.9185 0.7373 0.6328 0.5282 0.3370 0.1875 2 0.9914 0.9421 0.8965 0.8369 0.6826 0.5000 3 0.9995 0.9933 0.9844 0.9692 0.9130 0.8125 4 1.0000 0.9997 0.9990 0.9976 0.9898 0.9688 \end{filecontents} \begin{document} \pgfplotsset{compat=newest} \pgfplotsset{mystyle/.style={% % allgemein ybar interval,%=10pt, ? % Balkendiagramm /pgf/number format/.cd, use comma, % Kommas als Zahlentrennzeichen %1000 sep={}, grid=none, % x xmin=0, xmax=5, xtick=data, xlabel style={anchor=north}, enlarge x limits={lower,rel=1.25}, %symbolic x coords={46,50.1}, %? every axis x label/.style={at={(current axis.south)},below=8mm}, % y ymin=0, ymax=1, ylabel style={anchor=east, yshift=4pt}, %enlarge y limits=false, %enlarge y limits={upper,rel=50.25}, % Dummer Effekt % Legende legend style={% at={(1,1), anchor=south east},anchor=south, legend columns=-1}, % x und y axis lines = middle, axis line style={-latex}, ticklabel style = {font=\tiny}, %xticklabel style = {font=\tiny,yshift=0.5ex} % Noden %nodes near coords, %nodes near coords align={vertical}, %every node near coord/.append style={anchor=mid west,rotate=60}, }}% \begin{tikzpicture}[scale=2.0, font=\tiny,] \begin{axis}[mystyle, width=3.5cm, height=2.5cm, xlabel={k}, ylabel={$P(X \leq k)$}, ] \addplot[draw=black, thin, fill=red!50] table [] {data.csv}; \end{axis} \end{tikzpicture} \end{document} gefragt 12 Jan '16, 16:00 cis |
Welche Spalte einer Tabelle geplottet wird, kann man mit Bei Verwendung von
Die letzte Koordinate bestimmt also nur die Breite des Balkens der vorhergehenden Koordinate. Wenn Du alle Balken von Plot der letzten Spalte: Code: Open in Online-Editor
\documentclass[border=2pt, varwidth]{standalone} \usepackage{pgfplots} %\pgfplotsset{compat=1.13}% derzeit aktuelle Version \pgfplotsset{compat=newest}% Overleaf hat nur Version 1.11 \usepackage{filecontents} \begin{filecontents}{data.csv} 0 0.5905 0.3277 0.2373 0.1681 0.0778 0.0313 1 0.9185 0.7373 0.6328 0.5282 0.3370 0.1875 2 0.9914 0.9421 0.8965 0.8369 0.6826 0.5000 3 0.9995 0.9933 0.9844 0.9692 0.9130 0.8125 4 1.0000 0.9997 0.9990 0.9976 0.9898 0.9688 5 \end{filecontents} \begin{document} \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}, % x xmin=0, xmax=5, xtick=data, hide obscured x ticks=false,% <- zum Anzeigen des Ticklabels 0 xlabel style={anchor=north}, enlarge x limits={abs=5pt,upper},% <- damit die Pfeilspitze an der y-Achse sichtbar ist % y ymin=0, ymax=1, ytickmax=.9,% <- kein Tick oberhalb von y=.9 ylabel style={anchor=south east}, }}% \begin{tikzpicture}[scale=2.0, font=\tiny,] \begin{axis}[mystyle, width=3.5cm, height=2.5cm, xlabel={k}, ylabel={$P(X \leq k)$}, ] \addplot[draw=black, thin, fill=red!50] table [y index=6] {data.csv}; \end{axis} \end{tikzpicture} \end{document} Mit WIe schon mal bei Deiner Frage Wie kann ich bei pgfplots die Pfeilspitzen der Koordinatenachsen editieren? erklärt, werden beim Setzen eines beantwortet 13 Jan '16, 00:30 esdd Dieses Zitat ist aber ganz schrecklich, da die Tabellen extern mit mathematica erzeugt werden :( Die alle nachzubearbeiten ist nicht elegant :( Aber sauber gelöst. :()
(13 Jan '16, 02:32)
cis
PS: Was muss man machen, damit die Säulen
(13 Jan '16, 02:33)
cis
|
@cis Dein Code ist nicht lauffähig und selbst wenn ich die Klammer um
draw,thick
entferne, erhalte ich nicht das eingefügte Bild. Eventuell möchtest Duybar
stattybar interval
verwenden?Die zu verwendenden Spalten kannst Du mit
x index
undy index
als Optionen fürtable
angeben, wobei die Zählung bei0
beginnt. Ohne Angabe werden alsox index=0
undy index=1
verwendet.Jetzt sollte es laufen.
ybar itervall
ist gewünscht.Das mit dem
index
tut auch :()Bloß setzt es die Achsenbeschriftungen -wie so oft- an blöde Stellen und zeichnet einen grid in den y-Pfeil. :(
plots werden übrigens teilweise deutlich besser, wenn man
compat=1.12
setzt, wie das normalerweise auch in einer Warnung vonpgfplots
empfohlen wird.