summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/pgfplots/todo.archive.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/pgfplots/todo.archive.txt')
-rw-r--r--Master/texmf-dist/doc/latex/pgfplots/todo.archive.txt1276
1 files changed, 1276 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/pgfplots/todo.archive.txt b/Master/texmf-dist/doc/latex/pgfplots/todo.archive.txt
new file mode 100644
index 00000000000..01760a95199
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgfplots/todo.archive.txt
@@ -0,0 +1,1276 @@
+------------------------------------------------
+BUGS
+------------------------------------------------
+
++ mark position clipping may fail: see
+ \begin{tikzpicture}
+ \begin{axis}
+ \addplot3[surf,shader=faceted,
+ scatter,mark=*,
+ samples=10,domain=0:1]
+ {x^2*y};
+ \end{axis}
+\end{tikzpicture}
+ in the manual (shader docs)
+
++ patch plots: type rectangle & shader=interp & mesh input=patches doesn't work
+ correctly as it seems.
+
++ \ref{} legends for 'surf' in unstable version do not work properly
+
++ plot graphics braucht
+ every legend image post/.append style={sharp plot}
++ extra ticks need a scope to enable drawing options:
+ \begin{axis}[
+ extra x ticks={0.7},
+ extra x tick style={
+ line width=3mm,
+ color=red,
+ tickwidth=3mm, % <-- only thing applied
+ },
+ ]
+ \addplot coordinates { (0,0) (1,1) };
+ \end{axis}
+
+
++ new coordmath framework is broken for log basis.
+ TODO: 1. the functions must be parameterized with A) the coordmath class *and*
+ B) the coordmathid.
+ For example 'pgfmath,x' and 'pgfmath,y'. Everything else doesn't work...
+
++ \ref and detached legends/colorbars do NOT work with external library and
+ convert with system call.
+ -> provide special handling!
+
++ providing 'thick' to linespecifications causes problems during the survey
+ phase: \pgfmathsetlength{} will use the FPU.
++ contour external: the \jobname dependend auto-file name will make problems
+ together with the external lib (the numbers won't be unique).
+ Perhaps I can fix that by using the external figure name instead? Or does that
+ already work?
+
++ stack plots + log scale is wrong: it stacks visually, but that's more or less
+ meaningless. Try
+
++ polar axes:
+ + \pgfplotspointouternormalvectorofaxis
+ is not good enough; it needs the coordinate on that axis to work.
+ -> IDEA: provide a further variable which fixes the 'v' direction of
+ that axis.
+ + axis lines should use the recently introduced framework for grid lines:
+ draw them as grid lines at upper/lower limits
+ -> will work automatically for polar axes.
+
++ colormap={mymap}{[0.5cm] rgb(0cm)=(0,0,1); rgb(10cm)=(1,0,0); rgb(11cm)=(0,1,0) }
+ is ok, [1cm] is also ok. But [0.1cm] doesn't work and produces
+ Sorry, non-uniform colormaps are only partially imple mented, yet: the
+ provided points must be multiples of the mesh width h=2.84544p t. Perhaps it
+ helps to provide the mesh widths as argument as in {<name>}{[1cm] <color
+ arguments>}?
+ -> BTW: error message could be improved somehow!
+
+
++ plot handlers should be allowed to overwrite
+ \pgfplots@plothandler@unbounded@visualize@jump
+ --> mesh already does it.
+
++ the 'enlarge x limits={abs=3}' key doesn't work: it increases the lower
+ limits, but it doesn't draw any tick labels (neither major nor minor)
+
++ nodes near coords and ybar stacked do not work
+
++ nodes near coords,ybar and a scale inside of nodes near coords doesn't work
+ \begin{tikzpicture}
+ \begin{axis}[ybar, width=\linewidth, xtick=data, font=\tiny, ymax=950, minor y tick num=1, nodes near coords, point meta=y-901, every node near coord/.append style={scale=0.7,anchor=south, inner xsep=0pt}, nodes near coords align={above}]
+ % VSM
+ \addplot+[mark=*] coordinates {(0,896) (1,700) (2,845) (3,834) (4,921) (5,921) (6,917)};
+ % BM25
+ \addplot+[mark=*] coordinates {(0,833) (1,641) (2,844) (3,820) (4,904) (5,919) (6,914)};
+ % LM
+ \addplot+[mark=*] coordinates {(0,703) (1,601) (2,654) (3,661) (4,901) (5,904) (6,901)};
+ \draw[gray, dashed] (axis cs:0, 901) -- (axis cs: 6, 901);
+ \end{axis}
+ \end{tikzpicture}
+
++ portability of externalized \label commands: define \tikzifinpicture which
+ should be part of the external separate package (in which case it is always
+ false).
++ the 'colorbar sampled line' and 'colorbar left' styles are incompatible:
+ there are no tick lines.
+
+X bug in linux printer drivers: colorbar shadings are not interpolated
+ correctly, the interp shadings work (also the colormap sampled style).
+ Version:
+ Linux 2.6.24-26-generic #1 SMP Tue Dec 1 17:55:03 UTC 2009 x86_64 GNU/Linux
+
+
++ the colorbar with surf mode is too short; the 3D colorbar axis won't be scaled correctly
+
++ the 'at' key appears to be broken. It happens if
+ - pgf 2.00 is used,
+ - at=(anode) is used where (anode) was originally in a different axis
+
++ gnuplot compatibility is broken since gnuplot 4.4 changed its table format for
+ logscale. Excellent.
+
++ the \pgfplots@ifgridlines@onorientedsurf@should@be@drawn#1#2 is WRONG.
+ It works ONLY for boxed axes. All others need special handling...
+
++ table package:
+ using a non-trivial 'every table' style combined with
+ \pgfplotstabletypeset[begin table/.add={}{}]
+ yields a bug: the .add is invoked twice (since the 'every table' stuff is
+ invoked twice).
+
++ in tick label reference: the example with \nicefrac has ymajorgrids, but
+ doesn't display them! Check!
+
++ parametric gnuplot plots do not work correctly (see mail of Gabriel Lera)
+ -> require user interface method to set 'variable' and 'variable y' for this case.
+ Default should be 't' and 'u,v' !
+
++ the tick pos stuff works (puh!)
+ However, there is an inconsistency with the axis lines stuff:
+ 'axis lines=left,tick pos=right'
+ will yield almost the same effect as 'axis lines=right'. However, the
+ 'axislinesnum' still assumes it is at the left.
+ Thus, there are potentially some inconsistencies...
+ -> BUT THAT'S LOW PRIORITY
+
++ tick align=outside doesn't seem to affect the ticklabel cs although it
+ probably should (tests in pgfplotstest.axislines.tex).
+ -> check also display styles for labels!
+
++ manual: 'label style' and 'xticklabel style' are not auto-crossrefed
+
++ extra ticks do not work with '3d box=complete'
+
++ I had just a problem with 'log basis y=2' : the x axis also used basis 2, but minor ticks basis 10.
+ It was the second plot; the first had also log basis x=2
+ -> the problem is the 'log basis ticks' style which changes 'log number
+ format code' globally for the axis.
+
++ reversed axes:
+ + color bars can't be reversed; the shading disappears
+ + reversed axes and centered axis lines:
+ the label placement style is incompatible.
+ - axis lines=center + reversed axes: the tick labels are placed somewhat
+ too near the axis... see the test in alignment subsection of testcases
+ -> perhaps the "normal vector" points into the wrong direction?
+ -> It is the tick@offset computed in the tick label placement
+ routines. I have implemented special handling for this case, but I
+ do not really understand the problem.
+ FIXME
+ - tickpos is wrong
+
++ coordinate filters for log axis are not as documented: the 'unbounded coords' key won't be processed correctly.
+
++ axis line variations: they pose problems for
+ a) 3d axes
+ b) reversed axes.
+
+
++ The Adobe Reader crashes on p 68 of the manual (while Foxit shows and
+prints without complaint). 27.11.2009 reported by J. Goebel
+
++ check the old code with 'pgfplotsautoanchor' for tick labels.
+ Is that still up-to-date? NO
+ Perhaps it should be replaced with something better? YES
+
++ recently, I used \pgfplots@command@to@string. But: for arguments like `\table' this yields `\table ' including a space. Check if that poses harm.
+
++ the pretty printer appends '{}' to known csnames.
++ the pretty printer appends ')' to |(|
++ the xref to |scatter src| is broken... why?
+
++ \thisrow inside of column creation does not respect aliases
+
++ the \pgfplotsretval key is uses globally and locally. Fix that.
+ There is also \pgfplotslocretval which should be eliminated.
+ Better: use \pgfplotsretval for local ret vals and
+ \pgfplotsglobretval for global ones. Better still: avoid global return values if possible.
+
+
++ 3D and special axis lines doesn't work at all.
+
++ sanitize 'plot file' by appending '0' coordinates at the end of the current line
+
++ the 'z buffer=auto' key in every mesh is stupid. What if I don't want it!?
+
++ allocate a \newread for input files to avoid compatibility problems with other packages.
++ scatter/pre mark styles should OVERWRITE the current setting instead of append. Provide additional keys with suffix '*' which provide the "append" feature.
+
++ if view leads to ||e_i| == 0, this results in an error somewhere (infty
+ occurs)
+
+X change UI of ticklabel cs: provide an option 'ticklabel cs:[<interpreter>]<coord>,<dist>' which specifies how to understand "<coord>". Choices:
+ - 'display'
+ - 'rel coord'
+ - 'abs coord'
+ is that really useful ?
+
++ plot3 table: the scanline detection does not always work (seems to need an empty line as last line)
+
++ the \pgfplotsdeclareborderanchorforticklabelaxis does not work if someone changes the shape! The shape changes occur AFTER my command.
+ -> solution idea: implement some sort of "unknown shape handler"!
+
++ 3D: very long labels are not completely correct: they may run into the axis.
+
++ the 'check tick show thing doesn't work for non-boxed axes!
+
++ BUG IN \jobname with " --->> IS INVALID
++ there is 'samples y' and 'variable y' but 'y domain'!
+
++ ich habe gerade das Problem, dass ich fuer einen Plot nur eine
+ y Achse moechte. Ich habe "axis y line=right" gesetzt. Nur sobald
+ ich "axis x line=none" einfuege, verschwinden die Tickmarken an
+ der y Achse...
+
++ provide a meaningful error message when mesh plots fail due to unbounded
+ coords - I don't want to waste time with checks. (could I optimize the
+ checks??)
+
++ I have removed the 'surf' option from \addplot3 {...}; -> check it ! it
+ should be moved to some default style; maybe cycle list or so?
+
++ the auto z buffer may lead to errors if cols and/or rows is empty.
+
++ FPU and '<' operator didn't work!?
+
++ the 'prepare@#1coord' doesn't check for unbounded coords. Besides, it appears
+ to be wrong - maybe I should rewrite it.
+
++ one my recent changes leads to 'meta data 25.000' is unbounded for whatever
+ reasons. Furthermore, \addplot3 {x^2}; lead to a bunch or error messages.
+
++ forget plot and legends do not work
+
++ providing 'ybar stacked' to the axis and 'ybar' to each plot seems to cause
+ problems (see test case per Mail)
+ -> that's because the '\addplot' ybar can't distinguish between /tikz and
+ /pgfplots paths!
+ + To stay compatible, I need to make sure that \addplot[ybar] actually uses
+ \addplot[/tikz/ybar]. That's how it is documented.
+
++ colorbar impl:
+ + determine correct height such that it has the same as its parent.
+ + determine all styles which need to be inherited.
+ + fix the style-restore routine! It eats too many '#' chars!
+
+
++ the 'plot table' detection of gnuplot files is buggy - it can fail for example
+ if there are 2 comment lines and 3 columns (with headers)
+
++ the xtick=data feature doesn't check for double occurances.
+
++ It appears the (new) placement of tick scale labels is wrong for 2d axes.
+
++ the '[xyz]ticklabels' key does NOT work any longer! It fails if some of the
+ ticks fall outside of limits.
+
++ the meta stuff is not sanitized: check for NaN or INF.
+
++ z buffer=sort does not respect LOG axes properly!
+
++ z buffer=auto should be added.
+
++ table package and unbalanced columns appears to be buggy.
+ -> need use 'nan'
+
++ I observed problems with the 'title' placement in 3D plots!?
+
++ something is wrong with the log basis stuff. Did I mess something up!?
+ + fix this! For reasons of compatibility, it might suffice to modify the
+ clickable lib since the display of the plots is correct (base 10). Any
+ internal UI special cases might still rely on base e (and it might be more
+ efficient to rescale just tick labels!)
+ - document that special handling to reduce confusion!
+
++ context incompatibility: \definecolor is defined differently in context, leading to bugs (occurs for 'mapped color')
+
++
+ \pgfplotsset{every axis/.append style={font=\footnotesize},
+ tick label style={/pgf/number format/1000 sep=},
+ xticklabel={\pgfkeys{/pgf/fpu}%
+ \pgfmathparse{round(exp(\tick))}%
+ \pgfmathprintnumber{\pgfmathresult}}}
+
+ to see the real tick numbers in a semilogxaxis, but when I use the former
+ fake plot as the first of my plots, it behaves as if I hadn't used these
+ options. When written in any other position it works as expected.
+
+ More specifically, this only happens when using xtick=data. If the ticks are
+ specified as a list, the bug doesn't show up.
+
++ there is 'ticklabel dist' and 'label shift'. Use the same naming convention!
+
++ 'shader=interp' still does not support 'ordering=colwise'
+
++ 'view={0}{90}' does not set label styles correctly
+
++ BUG: empty axes and one of my newer changes (bblowerleft) conflicts.
+
++ the clickable lib output is shifted somehow (at least for log plots). It
+ appears it does not respect the new alignment stuff properly.
+
++ the 3d labels still need a good initial style - and a user interface to set
+ it.
+ idea: 'every 3d axis' is a style which can set axis descriptions or tikz keys.
+ + all descriptions styles need to be set up before they are used.
+ + changes to these styles may only be done when the axis' dimension (d=2 or
+ d=3) is clear - and the associated initial styles are installed. Then,
+ modifications may be applied.
+ Idea: implement all that stuff when 'every axis' is used. But that has
+ '/tikz/' has default search path...
+
++ I fear plot gnuplot may not reflect the latest changes - at least not for 3D!
+ + log basis
+ + plots R^1 -> R^3 (parametric)
+ + plots R^2 -> R^3 (parametric)
+ -> may require 'u' and 'v'
+ + using other variable names (see 'set dummy')
+ + ydomain is not set
+
++ the \x, \y, \z etc. macros in the table expression plotter should be
+ eliminated! They pose name conflicts.
+
++ the '/tikz/variable' key can't be provided as argument to an axis (missing
+ family)
+
++ the tick scale labels need to be placed with 'ticklabel cs'. That's difficult,
+ but necessary.
+ + 2D
+ needs to be improved!
+ + 3D
+
++ the color bar is an "axis description" -- but it can't be placed like other
+ axis descriptions!
+
+
++ I need a solution to rotate labels correctly and make alignment in a good way
+ -> probably the "sloped" method of pgf?
+
+
++ I fear the 'plot gnuplot[<opts>]' thing does not properly process <opts>.
+
++ what happens if 'point meta [min,max]' is provided inside of \addplot?
+
++ it appears the recent changes update the bounding box - disabling overlay for
+ tick labels
+
++ the 'legend image code' is again buggy! Try ybar! This here is the reason: one
+ can't set draw/fill mode from within a scope!
+ \begin{tikzpicture}
+ \scope[fill=blue,draw=red]
+ \path (0,0) circle (10pt);
+ \endscope
+ \end{tikzpicture}
+
+
++ the 'x={(x1,x2)}' option(s) are buggy: the complete vector length needs to be
+ scaled by the datascaling routine, not the single components.
+
++ ticklabel interval stuff doesn't work properly
+
++ potential problem with stacked y bar and semilogyaxis, see bug report per Mail
+
++ stacked plots do not sanitize the input arguments: it may happen that too few
+ (or too much) coordinates are given.
+
++ axis y line=right, FAILS to produce correctly placed tick
+ labels -> only in manual!?
+
++ ymin=0.9 is ok while ymin=.9 is not ok -- update number parser.
+
++ legends are currently broken!
+
++ the tick labels on axis boundaries are often missing. I suppose this is due to
+ rounding inaccuracies or '<' instead of '<='. check that!
+
++ new alignment: origin anchors for unfinished axis is not updated.
+
+X perhaps the ASCIIHexEncode would be a useful addition for the pdftex driver of
+ surfshading as well...?
+ no, it isn't. pdf2ps still generates huge sampled postscript files.
+
++ check for the @non@legend@options - I suppose they are deprecated now and
+ waste computation time.
+
++ the new key processing which skips every /tikz option in \addplot might not be
+ correct - there are several plot related exceptions like /tikz/id etc which
+ SHOULD be processed. Make sure I have all of them.
+ Besides: what happens if someone uses /tikz/draw explicitly? I am not sure if
+ that hurts...
++ the recent search path construction WILL also set tikz options during
+ \addplot.
+ There won't be any paths during \addplot - but I am not sure if there can be
+ any scoping problems related to the graphics state.
+ -> that stuff produces problems with /tikz/ybar vs. /pgfplots/ybar!
+
+
+
++ the view argument should be similar to gnuplot /matlab. I fear I have
+ exchanged some of the directions.
+ In matlab, the argument is '{yaw}{pitch}' instead of '{pitch}{yaw}'
+ Furthermore, the rotation axes are different. view={0}{0} in matlab shows
+ the x axis horizontally and the z axis vertically - the view direction is
+ (0,1,0) -- for me, this would be (0,0,1).
+
++ pdf2ps still fails for interp shader - it has a limitcheck exception. Perhaps
+ the number of bits is too large for ps?
+ -> a very small stupid test with 8 bits per coordinate and 8 bits per cdata
+ worked
+
++ clickable plot lib produces visual artefacts in acroread
+ -> the 'hidden' flag appears to be incompatible with figure environments!?
+ - fixed in recent hyperref drivers of pdftex; was actually a bug of hyperref
+
++ the 'current axis' node is not defined until the first axis descriptions are
+ drawn. That should be fixed by defining the low-weight shape before processing
+ the stored path commands.
+
++ The following fails:
+ \addplot+[
+ black] plot coordinates { (0,0) (1,1) };
+
++ the \ref command should be \protect'ed in LaTeX captions
+
++ the ticklable dist feature NEEDS anchors.
+
+
++ provide example for colormap changes - that should also verify the correctness
+ of the method
+
++ provide sanity checking in scatter plots - for example missing explicit
+ scatter src.
+
++ improve docs for scatter plots:
+ + 'only marks' is also a scatter plot!
+
++ something with the table package appears to be buggy!?
+
++ the plot table[] search path is not good - it should include /pgfplots
+
++ introduce backwards compatibility with old pgfmathfloat.code.tex file
+ [ not interesting for pgfplots 1.2, only for pgfplots 1.1 !]
+
++ there is a bug related with empty axes - I suppose in conjunction with the
+ tickmin/max feature (it won't be reset properly)
+
+
+X there is a space too much in some behavior messages (occured in test
+ processing)
+
+X introduce backwards compatibility with old pgfmathfloat.code.tex file
+
++ the auto-generated tick labels for non-unit-distance log axes could be better.
+
++ verify that the domain key always accepts the extended data range
+
++ I observed problems with opacity set for just one plot which was used for
+ every plot in the axes!?
+
+
++ the stacked plots impl is not yet in logical coords - that means it
+ won't work with non-standard unit vectors!
+
++ The floating point math routines should be put into a separate library.
+ Provide compatibility support for that in pgfplots!
+
++ empty plots cause bugs.
++ empty plots and the named nodes may not work correctly -> check that
+
++ newlines in plot coordinates cause an error.
+ + provide sanity checking and correct error messages!
+
++ 'domain' can't be used to increase the data range, even when combined with fp.
++ huge 'domain' arguments for 'plot function' lead to an 'dimension too large' error
+ although everything works fine
+
++ the float math methods should be affected by the fixedpoint library, but they
+ are (because the underlying pgf math routines are exchanged).
+
+X scaled ticks is not properly implemented for log axes
+ + it is not available for log axes, so that's ok
+
++ pgfplotstable and \rowcolor and 'sci sep align' in conjunction produces
+ overwritten digits! The color seems to be on top of the numbers left of the
+ sci separator.
+ -> This is caused by the left/right overhang of the colortbl package and my
+ implementation of 'sci sep align' as an extra column. That's bad.
+ -> Idea:
+ - manually overwrite \rowcolor/\columncolor/\cellcolor in a portable way such
+ that overhangs are made properly.
+ Maybe there is a macro in colortbl?
+ [fixed for \rowcolor]
+
+
++ stacked plots + error bars don't work correctly together: I need to shift the
+ error bars
+
++ error bars should be drawn on top of the plot to avoid conflicts with filling.
+
++ [xy]ticklabel pos values 'top' and 'bottom' are somewhat inconsistent with
+ the actual placement
+
++ the auto-disable-feature for logarithmic minor ticks can be overruled (of
+ minor grid lines) which should not be possible
+ -> provide a good policy how to deal with user inputs:
+ 1. draw minor tick/grids if requested
+ 2. provide error message
+
++ scatter is disabled if no default mark has been set.
+
++ filter warnings are broken because they don't output the input coordinates
+
++ tick align=center is broken since last revision. Possibly tick align=outside
+ as well.
+
++ clickable lib is broken somehow
+
++ check for clickable lib if multiple axes are in the same tikzpicture
+ -> doesn't work. Why!?
+ - I can't reproduce that bug. Maybe it is fixed in the meantime?
+
++ the case
+ ymin=629.65,
+ ymax=629.70,
+ FAILS with math errors because the affine data transformation is deactivated
+ for the automatic tick computation! Providing tick labels manually works.
+ -> FIX THAT! Ticks should be computed without this restriction (if necessary,
+ in float arithmetics)!
+
++ it is not possible to provide '[xy]mode' in styles.
+ -> ok, provided error message.
+
++ check whether there are any plots before processing something like
+ 'xtick=data' or so
+
++ the clipping of tick/grid lines is currently disabled due to the change to
+ logical coordinates and needs attention.
+
++ 3D case : which hyperplane gets tick LABELS?
+ The current implementation based on '[xzy]ticklabel pos' is not sufficient
+
++ 3D case: something fails with disabledatascaling
+
++ '\coordinate (<aname>) at (axis cs:0,0);' does NOT work;
+ '\node[name=<aname>] at ... ' DOES work.
+ -> I can't hook into the 'at' syntax; I can only override the 'name'
+ key.
+
++ check whether the \label/\ref construction requires \protect\tikz and
+ \protect\path etc. if it is placed inside of \caption...
+ -> no; it has catcode 12
+
++ check whether named nodes are still ok. Since the 'fill opacity' bugfix, these
+ may be broken...
+ maybe the scoping needs to be improved
+ -> there is still need for scopes in case 'clip markers'!
+
++ error messages if the PGF version is wrong should be added
+ -> check for \pgfkeys
+ -> I should also check whether the float routines are available!
+ Maybe they will migrate to a tikz library someday.
+
+
++ \addplot [fill opacity=...] is not scoped properly!
++ I suppose the same problem holds true for dotted line styles.
++ setting mark options to dashed also changes the legend's appearance
+
++ renormalization bug in
+ log(9.999998e-01) = 4.70201 != 0
+
+X Bug in table input: if colnames contain (some?) UTF8 characters, \csname <colname>\endcsname FAILS.
+ That means table column names can't use UTF8 characters.
+ Possible solution: for each character in <colname>, check whether it is active. If yes, change its meaning.
+ I am not sure if that's acceptable...
+
+X error recovery: it is sometimes almost impossible to find errors in
+ key-value-settings because \end{axis} or \pgfplotstabletypesetfile does not
+ is NOT the correct context.
+ -> possibly with \errorcontextlines=10?
+
++ the error message for gnuplot invocation is wrong; gnuplot should be called on
+ the '.gnuplot' file instead of the '.table' file
+
++ there are still plain TeX loops in the legend code!?
+
++ javascript stuff is incompatible with a lot of active characters,
+ for example the german package:
+ + bug in insdljs: workaround introduced.
+ + bug in my code fixed
+
++ to check: it *could* be possible that errorbars + stacked plots are
+ incompatible.
+
++ the 'alias' and 'create on use' features may lead to errors. Check it!
+
++ variables which are used both globally and locally seem to fill TeX's save
+ stack to due retained restores
+
++ I have introduced incompatiblities with the 'log identify minor ticks' option.
+ Check how to solve that. Side conditions:
+ - compatibility with the modified log tick labels for small range
+ - compatibility with extra ticks
+ - compatibility with the manual
+
++ check whether 'clip limits' works properly if only one data point falls into
+ the final region
+
++ add '-halt-on-error' to externalize command
+
++ handle rare case that auto limit computation leads to min > max (only possible
+ for clip limits=false)
+
++ evaluate 'every axis plot' inside of \addplot command, even if that means a
+ small inefficiency because it is evaluated in the \draw command as well.
+ -> allows to get id, prefix, samples and other behaviorual options.
+ -> attention: then, every axis plot would contain BOTH display and behavioral
+ options; take care with key paths
+
++ \addplot plot[#1] does not use /pgfplots as search path
++ 'every axis plot' does not use /pgfplots as search path
+
+
++ implement partial limit specification, for example 'xmin=5' -> only compute
+ 'xmax'
+
++ check gnuplot on windows - there appear to be semicolon problems!?
+
++ again, the disabledatascaletrafo key does not seem to work correctly. Check it!
+
+X active semicolons may be a problem
+
++ [ CF: for tikzlibraryexternal : use double quotes instead of single quotes in
+ system calls -> win32 doesn't support single quotes ]
+
++ problem with context: even simple images do not work correctly. Why does the example work!?
+
++ table package: 'array' required for some examples -> document
+
++ handle 'nan' and +-inf in plots
+
++ 'every axis plot post' is not reflected in legend (at least not properly)
+
++ plot function: incompatibility with 'german' package and " catcodes
+
++ improve error recovery
+
++ grid lines and tick lines can obscure the axis lines, especially when used
+ with different colors.
+ -> draw axis lines on top of tick/grid lines!?
+ Or more generally: change drawing sequence to
+ 1. grid lines
+ 2. tick lines
+ 3. axis lines
+ 4. tick labels?
+
++ eliminate any public reference to the '\\'-lists. They are inconsistent with PGF.
+
++ use '{}' for sci 'e' style - looks better
+
++ the tick scale labels are inadequate.
+ 1. Formatting
+ 2. maybe they should be disabled at all!?
+
++ specifying axis limits for X should also limit those for Y (some sort of
+ clipping)
+
+X the text height of every axis x tick should be adjusted to allow tick scale
+ labels on the same vertical alignment
+ -> bug in pgf: text height does not properly respect to the current font!?
+
++ the new \pgfkeys framework:
+ + I have re-implemented all options with \pgfkeys.
+ this allows styles and mixing of TikZ/pgfplots options.
+ + BUG: if someone provides FULL keynames, the method WILL FAIL.
+ + the style= option fails.
+ + the 'x=' and 'y=' options fail.
+ + every option which exists in both, pgf and tikz, will fail!
+ + 'legend style' fails
+ + the 'legend style, grid style, x label style etc. options' test fails
+
++ axis limits of zero width are not fixed causing division by zero
+
++ ytick=\empty is broken again :-(
+
++ if a logplot has very small axis ranges, only ONE tick label will be placed.
+ Thats not enough.
+ In such a case, tick labels should be placed at MINOR TICKS [2-9]*10^i.
+ BTW:
+ if someone places tick marks at [1-9]*10^i, the minor ticks should NOT be
+ disabled.
+ Instead, tick positions should be RECOGNISED AS MINOR TICKS (which is not
+ that simple).
+
++ die legend[font=] variable ist doch dasselbe wie in dem tikzstyle zu legenden,
+ oder? warum funktioniert es dann anders?
+
++ implementiere enlargelimits fuer log-achsen
+
++ markers werden rausgeclipped, wenn die achsen TIGHT sind.
+
++ man kann keine leeren listen an tick labels uebergeben!
+
++ width/height produziert NICHT die gewuenschte breite.
+ Man sollte ne zusatzoption haben, die die labels grundsaetzlich NICHT
+ beruecksichtigt.
+
+X Fix the scaling estimations.
+ Problem: I don't know sizes of labels, legends, titles and tick labels.
+ Idea:
+ -Create a temporary picture
+ \hbox{%
+ \begin{tikzpicture}[xshift=...,yshift=...] % skaliere auf (0,0)--(1,1)
+ \draw (0,0) rectangle (1,1)
+ plaziere labels + legende + vllt. ein tick auf jede achse (?)
+ \end{tikzpicture}
+ }%
+ - measure and remember its size
+ - throw it away
+ -> 9.2.2008:
+ ATTEMPT FAILED.
+ Reasons:
+ 1. it is not possible to place a tikzpicture into a tikzpicture.
+ And it can't be because Tikz updates bounding box parameters GLOBALLY.
+ 2. I could use a combination of
+ - scope,
+ - the 'current bounding box' node,
+ - \pgfpointanchor{current bounding box}{ anchor name },
+ - drawing commands for labels,legend etc.
+ Effect: bounding box is determined correctly. BUT:
+ - bounding box of real picture may be affected,
+ - every output is drawn because nodes can't be 'thrown away'.
+ At least I do not know how.
+
+
++ enlargelimits muss RELATIV nicht ABSOLUT gemacht werden.
+
++ es gibt einen fehler in der achsen skalierung, wenn
+ man sehr grosse limits hat (normale achsen)
+
++ default ticks muessen besser an achsenlimits angepasst werden
+ -> bei sehr grossen oder sehr kleinen limits schlaegt die derzeitige
+ einschraenkung der step sizes fehl
+
++ addplot plot coordinates { (235 , 43252) }
+ ^
+ funzt nicht wegen dem leerzeichen vor dem komma
+
+X verschiebung des ylabels ist komisch, wegen der rotate option
+
++ that first/last coord detection doesn't work for 3D
+
+
+------------------------------------------------
+FEATURES
+------------------------------------------------
++ allow to advance cycle list(s) manually
+
+X automatically choose a predefined scaling style depending on width/height (?)
+
++ implement 'point meta=symbolic command:<cmd>' and 'point meta=command:<cmd>'
+ the command should assign '\pgfplotsretval'
+
++ It would be a valueable addition if the external lib would be available for the next stable release.
+
++ the scatter/classes feature needs a legend.
+
++ provide a '3d box' boolean which draws the full box.
+ -> should use the correct drawing sequence (foreground/backgraound)
+ -> should use the decoration things
+
++ there is no possibility to provide a background color for the axis only
+ (should be a fill/draw style for the clip area).
+
++ -> perhaps 'plot box aspect ratio=<x> <y> <z>' ?
+ And I still have the stretch-to-fill thing as in matlab.
+
++ finish the 'unbounded coords=jump' method.
+
++ I have the following request. Is it possible to also provide a domain
+key for file and table plots. I have a file containing data points
+where only the points in a certain range shall be plotted. I first
+thought that filters might be a solution, but it seems that they apply
+to the whole axis, not only to one specific plot.
+
++ the UI to provide point meta is complicated.
+
++ provide a possibility to get the maximum tick width (for use in ticklabel cs)
+
++ provide a possibility to draw gaps. Maybe using nan or inf coordinates?
+
++ provide a 'y variable' key?
+
++ provide other log bases
+
++ implement colorbars. I have a running prototype; it just needs some tuning.
+
+X 3D: assume default plot type when used with \addplot3 without plot style
+ (perhaps a special cycle list)
+
++ allow to anchor an axis at any labeled node inside of it (like for a matrix)
+
++ legendfromname etc: allow usage via \ref{}.
+
+
++When working with markers on the plots, the nomenclature is inconsistent. There
+is 'mark size', 'mark=*' and 'only marks', but 'no markers'.
+
++I created several cycle lists to be consistent in different types of plots. For
+example I have a cycle list with markers and no lines for raw data points and a
+cycle list with only lines in corresponding color. Now if I want to have raw
+data points and fits in one axis, I cannot use these. Ok, I could make a
+cyclelist where raw data and fit styles take turns, but this would break down
+when I have more than one fit for a set of raw data. This is probably something
+that has to go into pgf, but would it be possible to add a easy way
++ to switch to different cycle list between two addplots,
++ and to navigate in it (go to a specific position in the cycle list, go n steps back/forth)?
+
++When I first tried to combine plots with only symbols and plots with only a
+line in one plot, I had difficulties to figure out how to do it. Having worked
+with pgf before, I intuitively tried to activate no marks/only marks for the
+whole axis and then override it explicitly for some plots, by adding [only
+marks/no marks] to addplot.
+
++ I would find it convenient, if there was a key to indicate legend placement,
+for example 'legend position=south west' as shorthand for 'legend
+style={at={(0.05,0.05)},anchor=south west}' or something similar.
+
+
++ provide a simpler method to replace the '\cdot' in tick scale labels with a
+ different sign, for example '\times'.
+
++ provide a feature for bar plots which add the bar value as node on top of the
+ bar.
+
++ use the new \pgfplotspointoutsideofticklabelaxis things to place axis labels.
+ -> this needs a further variant which allows 'relative' axis coordinates
+ (0=lower limits, 1=upper limit and everything between)
+
++ I need a clean interface to distinguish between R^1 -> R^3 and R^2 -> R^3 visualization.
+
++ allow changes to `legend image code' in plot styles. Maybe the 'legend image
+ code' or some other preparation commands can be remembered explicitly such
+ that they are set before 'legend image code' is already running?
+
++ legends need a better key path to process pgfplots plot handlers.
++ I need legends for mesh/surface plots.
+
++ provide the axis bounding box as coordinate system (for description placement).
+
+
++ write public interface \pgfplotsdepthofxyz#1#2#3
++ consider renaming that one to pgfmath... or pgfplotsmath... ?
+
++ reverse legend
+ -> CF: implementation of Tom Cashman per mail
+
++ what about in-text-input of tables like
+ \pgfplotstableread\data{<data>....<data>}{\macro}
+ \pgfplotstableread\data{<data>....<data>} to listener \listener
+
++ I have just added '* expr' for plot table.
+ ideas todo:
+ + implement it for plot table structure as well,
+ X document plot file such that users know how to add expressions, or, even
+ better, automatically switch to plot table if someone uses x expr..
+
+X optimize the z buffer=sort impl of mesh mode: use preallocation (doesn't yield
+ much, but at least a bit)
+
++ it could be interesting to provide customizations to the cube marker. For
+ example different lengths for each side... could be used as basis for a 3D bar
+ plot implementation.
+
++ there are applications in which BOTH untransformed meta AND transformed meta
+ are required. In this case, the untransformed meta should be provided in a
+ more convenient way - perhaps as fixed point number?
+
+X in scatter point public interface: it would be interesting to know if we are
+ currently processing the first/last coordinate. is that information available?
+
++ write default styles for "string coordinates" which maps a set of
+user defined strings somehow into a numeric range (using a simple
+dictionary)
+
+
++ pdf supports REAL lattice shadings! See pdf reference 1.7, section 4.6.3.
+
+
++ provide a public basic level API to pgfplotstable:
+ + access, iterate and read table elements
+ + manipulate elements
+
++ binary input subroutines:
+ use a simply scaling for dimen registers. The scaling should be such it maps
+ [-16384,16384] -> <range for N bytes>
+ properly, i.e. it is just an integer division. The resulting integer can be
+ encoded using the available linear map functionality.
+
++ Notes for how to finish the 3D axes visualisation:
+
++ the FPU uninstall command can be assembled ONCE (globally). No need to do that
+ multiple times.
+
++ What about something like '/pgfplots/table/x expr={<math expression>}' ?
+ -> I could still use the lazy eval framework of pgfplotstable, i.e.
+ \thisrow{} commands, \pgfplotstablerow, \pgfplotstablecol etc.
+ The \prevrow and \nextrow features won't be possible (?)
+
++ improve support for negative (reversed) axes
+
+
+
++ improve plot expression
+ + accuracy
+ + UI
+
++ what about an optimized version of plot expression which does not need the
+ brace hack (\x,{sin(\x r)}) ?
+
++ plot expression for log plots would be more valueable, if it could sample
+ points exponentially, i.e. linear between log(xmin) ... log(xmax):
+ x_i = exp( log(xmin) + i * ( log(xmax)-log(xmin) )/(N-1) )
+
++ define a 'cycle list' style which simply inserts different colors into the
+ predefined style (thus, markers are fixed, colors vary). One could also think
+ about a complementary style.
+
+
++ create public key alias for '/pgfplots/domain' -> '/tikz/domain'
+
+X the coordinate preparation routines should assign global registers. This would
+ deal properly with grouped '\addplot' commands and it allows several
+ optimizations in the coordinate processing (elimination of list allocations).
+
++ document line styles with arrows
+
+
++ provide 'only each nth coordinate' or so as style on top of 'x filter'.
+
++ think about quiver plots
+
+
++ implement simply style 'scatter classes'.
+ + sanity checking feature: try if 'pgfmathfloattofixed' results in a known
+ class! -> but catch exceptions if the value is no number!
+
++ allow symbolic meta data
+
++ provide input options for 'meta' data
+ + plot file
+ + plot table
+ + plot coordinates
+ - document that stuff
+
+X I could extend the clickable library such that a click into a TABLE
+ opens a marker into one (or more) designated plots.
+
+
++ optimize the new code by re-defining \pgfqpointxy for the case of scaled
+ standard unit vectors.
+
+X perhaps I can use pdf line annotations to improve clickable lib?
+ -> no: there are right restrictions when using latex.
+
+
++ I could optimize the number parser with '\csname ...#1\endcsname'
+ constructions where '#1' is the currently identified character.
+ If #1 in {0-9,e,E,+-} etc., I could save a lot of macro assignments and
+ \ifx character comparisons.
+
++ Speaking about optimiziation: I always wanted to test \pgfmathln inside of the
+ log code (combined with float support).
+
++ the 1000sep character should be placed for numbers >= 10000, not before.
+
++ improve scaled ticks: allow manual control over the automatic tick scaling.
+
++ it would be interesting to get an high-level coordinate mapping
+
++ a scatter plot feature in which each mark gets its own set of options would be nice.
+
+
++ styles are named very unintuitively. I should add something more convenient
+ (for example like the 'legend style={}' command). Idea: use the *same* name
+ as the options which are affected,
+ 'xlabel style' 'title style' etc. My current naming scheme used the name of
+ the 'every style' which suffer from backwards compatibility with xkeyval...
+ :-(
+
+X maybe it is possible to eliminate a lot of key macros to save string space?
+ Those family macros can be optimized (sure ?).
+
++ axis equal option
+
++ consider 'plot image[xmin=,xmax=,ymin=,ymax=] {<graphics>};
+ -> load external plot image!? Only useful for matlab, if matlab would allow 100%
+ control over bounding box. Unfortunately, it doesn't.
+
++ allow extended <col name> arguments inside of create column
+
++ is it possible to create a *real* linked list? It should have the following
+ features:
+ 1. O(1) push/pop operations
+ 2. O(N) copy()
+ 3. O(N) convert to macro list
+ 4. O(N) traversal/loop
+
++ introduce \label and \ref for legend entries?
+
++ optimize tikz-interface
+
++ optimize macro-append issue from O(N^2) time to O(N)
+
++ create a \pgfmathfloattosci method and use that for the numerics in table package
+
+X re-implement 'dec sep align' of table package natively, not as high-level
+ style.
++ It is not (easily) possible to replace single entries of tables with '-'.
+ (for example: gradient columns)
+
++ create a \pgfmathfloattosci method and use that for the numerics in table package
+
+X check whether the new floating point routines can be used to
+ REALLY setup a linear map DATA RANGE -> DISPLAY RANGE
+ Technical thing: map the CLIPPED data range or the TOTAL data range?
+ What advantages/disadvantes appear?
+
++ [Tikz] document how to use internal registers can be used in libraries.
+
++ [Tikz] add an 'every plot mark' option and adjust 'mark options' accordingly
+
++ document the 'external' library of tikz (CVS only).
+
++ group 'All supported styles' section by content
+
+
++ allow arrow heads or other axis line styles
+ + styles for axis lines are missing
+ + for outer axis lines: introduce option 'separate axis line paths'
+ if one wants to use arrow heads
+
++ set default styles for non-boxed axis labels
+ + label positions for centered axis lines
+ + tick scale labels
+ + tick align versus label positions
+ + think about axis label placement. Possibilities:
+ - on the same side as tick labels.
+ -> should be move away in normal direction
+ -> should avoid problems with tick scale labels
+ - opposite of tick labels
+
+
++ the table package could use some sort of multicolumn feature which
+ allows something like 'columns={A,B,A,B,A,B}' and distributes entries of input
+ columns A and B equally to output columns.
+
++ automatic disabling of enlargelimits when axis lines are not drawn as a box
+
++ copy my personal' homepages short images to pgfplots website
+
++ interrupt single plots at discontinuities (for example tan(x))
+ -> don't draw from +infty to -infty
+
++ optimize plot expression
+
++ optimize tick generation code for speed
+
++ alias 'axis x line=middle' and 'axis x line=center'
+
++ an option which contains legend ENTRIES?
+
++ the non-boxed axis lines are placed at 'ZERO'. Maybe this zero level should
+ get an anchor!? -> allows to place axis labels above it
+
++ default style for grid lines to: {thin, black!25} ?
+
+
+X implement an axis as path-command
+
++ implement proper anchors
+
++ provide simple options for useful bounding box truncations
+
+
++ Maybe I could perform a restore of the current bounding box at the END of an
+ axis. Restore means: restore to the setting BEFORE the axis.
+
++ I could create a node which can be referenced and which has the axis' size
+ [ That touches another open problem, see below]
+
++ I could use the new 'local bounding box' option of PGF to restrict the
+ bounding box to the axis' size
+
++ I also need some sort of number style for log-tick-labels.
+
++ move math mode shifts into \prettyprintnumber implementation.
+
++ allow the '-plot' commands.
+ It would be a cool feature if '(FIRST_X,0)' could be inserted as move-to
+ operation before every plot.
+ -> one could make funny features with 'fill' in plot styles.
+
+X make the legend code more general: allow
+ \addformattedlegendentry{ \node{hallo} \nextcell \node{foo} \nextcell #1}
+ where #1 is the auto-generated small plot-spec image. One could also provide
+ '#2' as just the current plot spec OPTIONS.
+
+
+
++ document 'legend plot pos' option
+
++ there are some clipping paths in the tick-placement loop which can be
+ replacement with simple \ifdim's.
+ I guess clipping is not the cheapest operation.
+
+
+X remember unfiltered (non-logarithmized) input ticks with \listnew and provide
+ them like '\tick' during ticklabel typesetting
+
+
++ improve tick placement (more) systematically
+
++ provide auto tick labels at 5*i if appropriate
+
++ implement the legend as tikz-matrix
+ -> width computation works correctly (there is a bug with font scaling)
+
++ provide tick labels as a list like
+ axis[tick labels={A,B,1,4,5,$\frac 12$}]
+ -> convert to \listnew, use listpopfront to access elements
+
+
++ provide options for log plot tick formatting:
+ 10^0.703 vs fixed point format
+
++ I could provide a global coordinate transformation
+
++ I could try to use the plot-stream framework of PGF directly instead of using
+ the 'plot coordinates' command of tikz.
+ Advantage: would be faster. And the additional features can't be used anyway
+ because of my own number parsing routines...
+
++ rename manual.pdf to pgfplots.pdf -> allows texdoc pgfplots
+
+
++ alignment: vertikal kann ich jetzt mit baseline. Kann ich horizontales
+ alignment an (0,0) hinbekommen?
+
++ axis hide option ? macht das sinn?
+
++ legende anders formatierbar?
+ - ausserhalb des (und isoliert von dem) plots?
+ + horizontal?
+
++ grid lines
+ + minor
+ + major
+ -> einfach als verlaengerung der kleinen tick lines
+
+X es gibt scheinbar in PDF viewern die moeglichkeit, fuer den Druck ein anderes
+ dokument/dokumentteile zu verwenden als fuers Bildschirmbetrachten
+ (draft-package bspw?).
+ Kann man das nutzen, um sowohl farbige als auch S/W-plots zu generieren?
+ -> pruefe draftcopy paket
+
+
++ koennte man den kram auch aus (grossen) tabellen rauslesen? Also sowas wie
+ "plot X versus Y aus file Z"?
+-> DEBUG!
+ Ideen:
+ + abstrakte datenstruktur als liste von spalten, eine spalte ist ne liste
+ von nummern
+ + einlesen:
+ + zeilenweise, haengt an die jeweiligen spalten mit \listpushback
+ coordinaten dran
+ + read first line as header (optionally my $flags line for column
+ formatting advice)
+ + read just strings, no parsing
+ - optimal: '\t' as separator. How can I teach TeX to use '\t' as
+ separator!?
+ + would allow
+ + \addplot plot table[x=X,y=Z] {\table}
+ and
+ + \typesettable[columns=...,format=sci,...,formatting options=...] {\table}
+ + implementation: simple run through column lists
+ -> CONSISTENT data representation, powerful display options
+
+
+
++ man sollte \addplot mit '+[OPTIONEN]' starten koennen.
+
++ ich sollte das enlargelimits deaktivierbar machen! vllt. auch ne option 'tight'
+
++ automatisches tick-platzieren koennte verbessert werden
+ -> insbesondere fuer normale plots
+
++ fehlerbars waeren nett
+
+
++ baseline option, die die linke unter ecke als '(0,0)' koordinate annimmt.
+ Wuerde generell sinn machen, oder?
+
++ ich haette sehr gerne ein Skript, dass zu jeder figure ein eps und/oder pdf
+ macht, dass dann bitte schoen ordentlich includiert wird.
+ -> see tikzexternal june 2008
+
+
++ 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.
+
++ [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
+