Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.soft-sys.math.mathematica > #1883

Re: Mathematica loop question

Path csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.dougwise.org!nntpfeed.proxad.net!proxad.net!feeder1-2.proxad.net!news.glorb.com!news-out.readnews.com!transit4.readnews.com!newspump.sol.net!posts.news.twtelecom.net!nnrp2.twtelecom.net!not-for-mail
From Stefan <wutchamacallit27@gmail.com>
Newsgroups comp.soft-sys.math.mathematica
Subject Re: Mathematica loop question
Date Tue, 26 Apr 2011 10:50:33 +0000 (UTC)
Organization Steven M. Christensen and Associates, Inc and MathTensor, Inc.
Sender steve@smc.vnet.net
Approved Steven M. Christensen <steve@smc.vnet.net>, Moderator
Message-ID <ip681p$blo$1@smc.vnet.net> (permalink)
References <ip60j0$aan$1@smc.vnet.net>
Lines 60
NNTP-Posting-Date 26 Apr 2011 09:51:16 GMT
NNTP-Posting-Host ce91abd9.news.twtelecom.net
X-Trace DXC=bhLH;;ZL:k=I]9knNJ:Q55C_A=>8kQj6=;[h;PUXBgb4:0bMINND5I4EFiONJ7[Go6j0>HnV3HWl;
X-Complaints-To abuse@twtelecom.net
Xref x330-a1.tempe.blueboxinc.net comp.soft-sys.math.mathematica:1883

Show key headers only | View raw


On Apr 26, 4:43 am, Sol Lederman <sol.leder...@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

Back to comp.soft-sys.math.mathematica | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Mathematica loop question Sol Lederman <sol.lederman@gmail.com> - 2011-04-26 08:43 +0000
  Re: Mathematica loop question Stefan <wutchamacallit27@gmail.com> - 2011-04-26 10:50 +0000
  Re: Mathematica loop question Ray Koopman <koopman@sfu.ca> - 2011-04-26 10:50 +0000
    Re: Mathematica loop question Ray Koopman <koopman@sfu.ca> - 2011-04-27 09:36 +0000

csiph-web