summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/pgfplots/todo.txt
blob: 49d55dc2452b2167e9e4abb0066bb33801edd9f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
-------------------------------------------------------------
FLEISS:
-------------------------------------------------------------

+ mache paket-abhaengigkeiten + versionsnummern ordentlich.

- implementiere irgendwas, sodass \ref{} und \label{} auch fuer plots benutzt
  werden koennen. Ziel: suche die plotspec zum letzten plot raus!

- dokumentiere trim-feature  (oder shcmeisse es raus)

+ dokumentiere filter-feature
	+ xfilter
	+ yfilter
	+ execute at begin plot
	+ execute at end plot

- aktualisiere doku fuer die neue log-evaluation
 	+ listing <-> axen konsistenz
	+ textanpassungen
	+ semilogxaxis - beispiel + doku

+ dokumentiere beispiel mit steigungsdreieck

+ verwende die neuen umgebungen 'loglogaxis', 'semilogaxis' etc.

-------------------------------------------------------------
BUGS
-------------------------------------------------------------

- die standard-positionierung der achsenlabels beruecksichtigt nicht die breite
  der ticklabels - entweder ist es daher zu weit weg oder zu nah

+ tickpos packt nur die ticks woanders hin, nicht die tick labels

+ das log-ding prueft nicht auf 0. was soll es dann ueberhaupt tun!?

+ das log-ding kann
  1e7 nicht lesen, nur 1.0e7

- wenn man jetzt ticks angibt, sieht man die rechenfehler angezeigt. das ist
  doof. Vllt. kann ich ja zugriff auf die normalisierte gleitpunktdarstellung
  bekommen und so das als 10^i darstellen??
  HALT: die ticks WAREN doch mal als normale zahlen gegeben, oder? Die sollte
  ich nehmen!

- bei bel. ticks moechte ich nur ne gewisse anzahl stellen im tick label haben!

- die legend[font=] variable ist doch dasselbe wie in dem tikzstyle zu legenden,
  oder? warum funktioniert es dann anders?

+ beim auto-limit-lesen geht
	\addplot[color=red,mark=x]
		plot coordinates {	... }
  nicht wegen nervigen white spaces.
  genauer: das whitespace nach ']' verwirrt TeX. NERV.

+ autoscale option ist falsch benannt. Die muesste enlargecanvas oder so
  heissen.

+ die Achsenticks in der y-log-achse werden nicht geclipped

+ bei nicht-integer-xmin oder ymin sollte der TICK nicht zur 0 hin runden,
  sondern immer nach unten. Das funktioniert derzeit nicht bei negativen zahlen.
  

+ die Achsenticks werden nicht geclipped

+ die Achsenbeschriftung wird nicht geclipped
	+  halb geloest: muss die sachen in tex-dimensionen parsen...


+ wenn man [xy]ticks nicht mit 1-abstand waehlt, werden die minor ticks
  angezeigt

+ durch skalieren mit [x=2cm] werden die tick-breiten mit skaliert

X durch die verwendung der TEX-Register scheinen ungeauigkeiten beim clippen
  aufzutreten:
  man sieht sachen, die aus der ungebungsbox rausragen.

+ diese liste sollte nicht '\\' fuer die interne repr verwenden.

X meine achsenlimits gehen immer in log10 waehrend der rest wohl eher ln ist!
  das hat alles seine richtigkeit.

+ die legende ist zu breit.

+ fuehre optionen fuer die legende ein
	(position, font)

+ wenn man mit 'font=\large' die gesamt fontgroesse anpasst, werden die legenden
  bei 'auto' konfiguration nicht mit breiter.

  Abhilfe vllt.: hole irgendwoher das '\font' argument ....

X Die gesamtbreite enthaelt zu viele nur grob einkalkulierte einfluesse!
  - rechts gibt es einen randbereich; vermutl. durch ticks
  - links gibt es das ylabel und die y-achsenbeschriftung

-------------------------------------------------------------
FEATURES
-------------------------------------------------------------

- es waere  nicht schlecht, wenn man die ticklabels bessere angeben koennte

- es waere schoen, wenn ich die ANZAHL der sinnvollen ticks angeben wuerde, d.h.
  TICKS PRO ACHSE anstelle von TICKS PRO UNIT DIFFERENZ

- ich haette sehr gerne ein Skript, dass zu jeder figure ein eps und/oder pdf
  macht, dass dann bitte schoen ordentlich includiert wird.

  DAS FUNKTIONIERT AUCH; siehe meine entsprechenden bemuehungen in dem skript.

  PROBLEM:
  - der support fuer dvipdfm ist lausig.
	1. kein korrektes bestimmen der bounding box
	2. beim lesen sucht er nach '\includegraphics{zeug.PDF}', was natuerlich
	   NICHT funktioniert, weil das pdf keine bounding box hat. supi.

- ich brauche ne einbindung als Tikz paket. Ich wuerde bspw. gerne mit
  tikzstyle{every axis}=[width=0.5\textwidth] oder so arbeiten koennen.
  Wie geht das?

- vllt. waere sowas wie 'filter' nicht schlecht: plotte einfach nichts, was
  ausserhalb eines gewissen domains liegt

- mache die default styles etwas professioneller: statt hellere marker lieber
  dunklere

- ich brauche ne option, die verspaetetes drawen erzwingt [selbst mit geg.
  limits].

- ich koennte log implementieren. 
  EINGABE:
   x = +m*10^e
  -> log(x) = log(m) + e*log(10)
  d.h. ich muesste nur ne implementierung fuer
  log(m),  0<m<1 finden.

  Ich koennte auch ne beliebe Zahl x=DDDDD.DDDDDDD in SCI format konvertieren,
  indem ich einfach kommas verschiebe und mitzaehle. Das geht alles ohne
  tex-register!

+ passe bounding box und x/y-skalierung "sinnvoll" an.
  +	mache ne option "width=" die die GESAMTbreite angibt.
  + mache "height" option
  + belege width und height defaultmaessig sinnvoll
  + ueberlege ein sinnvolles gesamt-skalierungs-konzept.
	Das, was ich jetzt gebaut habe, mit 'x=SCALE' und/oder 'y=SCALE'
	ist nicht ausgereift und eher verwirrend. sowas macht man wohl besser mit
	pgf-skalierungen!
	+ 	Die 'x=' und 'y=' optionen sollten direkt in setxvec reingeschrieben werden,
		ohne schwachfug mit skalierung!
	+ 	wenn ich 'width=BLA' angebe, wird automatisch 'y=1cm' angenommen. Das
		ist unintuitiv; man erwartet eher, dass defaultheight im aspect ratio
		mitskaliert wird.
	+	Nur mit der 'x=' bzw. 'y=' option sollte es NACH AUSSEN moeglich sein,
		direkt einfluss auf die koordinaten zu nehmen.

- entscheide automatisch, ob der abstand zwischen ticks an die skalierung
  angepasst werden sollte.

- Einbinden als Tikz-Library

+ [xy]min = auto
  -> berechne die werte numerisch
  Ideen:
  + verzoegere das malen der Achse bis \end{axis}
  + in jedem \addplot:
    ich koennte irgendwie pruefen, ob ich 'plot coordinates' habe.
	Sobald ich diesen modus erkannt hab, kann ich koordinate fuer koordinate
	parsen und jeweils min/max bilden.
  + ich muesste dann noch den befehl in einem makro konserieren, sodass er
	 spaeter, nach dem verzoegerten achsen malen kommt.

  OFFEN: was passiert, wenn NICHT plot coordinates benutzt wird? Vllt. die
  'domain' variable abfragen?
  -> jedenfalls koennte ich mir da durchaus was ueberlegen!

+ [xy]tick = auto
  in abhaengigkeit von [xy]mode: zeige ticks von floor(xmin)...ceil(xmax)

+ mache styles:
  + every plot
  + every axis (?)

+ gebe eine liste von verfuegbaren linestyles an, durch die mit jedem
  plot-befehl durchgecykled werden kann

+ option, minor ticks ein/auszuschalten

- option, die X/Y-Achsen anders zu formatieren. Moeglichkeiten:
  - Kasten drumrum
  - je eine Linie mit Pfeil am Ende
  - Achse nach rechts oder so

+ aendere die das \addplot makro derart, dass beliebige plot-moeglichkeiten
  folgen koennen
  \addplot[OPTIONS] plot coordinates {...};
  -> das \addplot ersetzt gewissermaßen das \draw

-------------------------------------------------------------
Implementierungsideen
-------------------------------------------------------------
+ Eine einfache Datenstruktur mit
	+ push_back
	+ create
	+ copy
	+ pop_front()
	+ get(i)
  waere sehr hilfreich.
  Mir schwant sowas wie eine reihe von makros \array@index ... das kann man aber
  nicht loeschen :-(
  alternativ geht natuerlich
  \array{{1}{2}{3}}
  oder so. Das verbraet nur eine variable, hat aber hohe zugriffszeiten