MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Mathematica loop question

  • To: mathgroup at smc.vnet.net
  • Subject: [mg118392] Re: Mathematica loop question
  • From: Stefan <wutchamacallit27 at gmail.com>
  • Date: Tue, 26 Apr 2011 06:50:37 -0400 (EDT)
  • References: <ip60j0$aan$1@smc.vnet.net>

On Apr 26, 4:43 am, Sol Lederman <sol.leder... at gmail.com> wrote:
> Hi,
>
> I'm teaching myself Mathematica.
>
> I've plotted this:
>
>    Graphics[{
>   Blue,
>   Disk[{5, 10}, .25],
>   Disk[{4, 9}, .25],
>   Disk[{6, 9}, .25],
>   Disk[{3, 8}, .25],
>   Disk[{5, 8}, .25],
>   Disk[{7, 8}, .25],
>   Disk[{2, 7}, .25],
>   Disk[{4, 7}, .25],
>   Disk[{6, 7}, .25],
>   Disk[{8, 7}, .25],
>   Disk[{1, 6}, .25],
>   Disk[{3, 6}, .25],
>   Disk[{5, 6}, .25],
>   Disk[{7, 6}, .25],
>   Disk[{9, 6}, .25]
>   }]
>
> Is there an elegant way to write this without a bunch of Disk statements?
> I'm imagining that this would be a double nested loop.
>
> Thanks.
>
> Sol

Sol,

First of all, cheers to teaching yourself Mathematica, I'm also self
taught (and still learning). I'd recommend attending some of the
online seminars (free!) if you havent already.
Second, below is what I would do, though I have shifted your points
down by 5 (the top point is not at {5,10}, but {5,5} instead) because
this simplified things. A quick fix would just be to add this term
back in, but it makes no visual difference. The code is for a general
n, where n is the number of points in the bottom row, and consequently
the number of rows.

In[1]:= n = 5;
In[2]:= Graphics[Table[ Table[Disk[{x, y}, 0.25], {x, y, 2 n + 1 - y,
2}], {y, 1, n}]]

or just for fun (takes a few seconds)

In[6]:= n = 100;
In[7]:= Graphics[Table[Table[{Hue[(-2Mod[x,y])/n],Disk[{x,y},x*y/n^2]},
{x,y,2 n+1-y,2}],{y,1,n}],
              ImageSize->{621,325},Background->Black]


I did indeed use nested Table statements. Hope this helps!
-Stefan S


  • Prev by Date: Re: Short-cut for reiteration, via postfix usage of Table as pure
  • Next by Date: Re: Extraneous @ in TeXForm
  • Previous by thread: Mathematica loop question
  • Next by thread: Re: Mathematica loop question