Re: Bizarre results with TreePlot
- To: mathgroup at smc.vnet.net
- Subject: [mg64982] Re: Bizarre results with TreePlot
- From: Maxim <m.r at inbox.ru>
- Date: Fri, 10 Mar 2006 05:15:14 -0500 (EST)
- References: <dujs54$940$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
On Tue, 7 Mar 2006 11:52:04 +0000 (UTC), Renan <renan.birck at gmail.com> wrote: > Hello MathGroup, > > From DiscreteMath`GraphPlot` help: > > (Apologies if there are any typos: I was unable to get it to > copy/paste without the formatting tags) > > "This plots a binary tree: > > g = Flatten[Table[{i -> 2*i, i -> 2*i + 1}, {i, 2^4 - 1}]]; > TreePlot[g];" > > Graphics::gprim: DiscreteMath`Tree`Private`TreePlot0[1->3,-1,1] was > encountered where a Graphics primitive or directive was expected. > [More...] > > Graphics::gprim: DiscreteMath`Tree`Private`TreePlot0[2->4,-0.928571,1] > was encountered where a Graphics primitive or directive was expected. > [More...] > > Graphics::gprim: DiscreteMath`Tree`Private`TreePlot0[2->5,-0.928571,1] > was encountered where a Graphics primitive or directive was expected. > [More...] > > Now, I don't understand why this gives wrong result, if it was copied > straight from the help file . > > Any clues? This is Mathematica 5.2 on Windows. > > Thanks, > Renan > There are two different TreePlot functions: one in DiscreteMath`GraphPlot` and another in DiscreteMath`Tree`. My guess is that you loaded only init.m from StandardPackages\DiscreteMath\Kernel, which is what <<discretemath` does (for more details see Add-Ons & Links | Standard Packages | Appendix: How Mathematica Packages Are Set Up and also A.6.1 in Mathematica Book; the latter explains about $Path): In[1]:= <<discretemath` In[2]:= Context /@ Names["*`TreePlot"] Out[2]= {"DiscreteMath`GraphPlot`", "DiscreteMath`Tree`"} DeclarePackage["DiscreteMath`Tree`", {"TreePlot", ...}] is called the last, so DiscreteMath`Tree` will be the first on the context search path. Unfortunately, DeclarePackage doesn't generate warnings about the symbol shadowing. You can always modify $ContextPath yourself though. Maxim Rytin m.r at inbox.ru