Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- JMP User Community
- :
- Discussions
- :
- Re: Curlicue Fractals

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

Highlighted
##

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Curlicue Fractals

Jan 3, 2020 11:48 AM
(513 views)

Here is a fun example, if you like math. You have probably heard of fractals. There are many fractal sets today. One of these sets is called *curlicue fractals*. You can learn more about them in this MathWorld article. The article uses Mathematica and the Wolfram Language, which have many dedicated functions for lots of math, but you can build your own fractal demonstration in a JMP data table:

The **θ** and **φ** data columns use formulas to generate the recursive fractal angles. The formulas depend on a constant **s**, which is defined as a table variable so that you can easily view and change it. The constant **s** is initially equal to π, but you can change it to other famous mathematical and physical constants or any value that you like.

The distance between points is always 1.

The **x** and **y** data columns perform the conversion from polar to rectangular coordinates and apply the recursion relation. This version, like the article, uses 10,000 recursions, but you can use more or less recursions to change the shape.

Use the **Curlicue Fractal** table script to launch Graph Builder and visualize the fractal.

Note that if you change the value of the table variable, the formulas run to update the data columns. This change is automatically pushed to Graph Builder to make a new plot.

Learn it once, use it forever!

2 REPLIES 2

Highlighted
##

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Curlicue Fractals

Nice! This makes it easier to change the value of the table variable and see the effect:

```
NamesDefaultToHere(1);
dt = DataTable("Curlicue Fractal.jmp");
sVal = dt << getTableVariable("s");
NewWindow("Curlicue Fractal Control",
PanelBox("Move the slider to update the fractal",
SliderBox(pi() - 0.3, pi() + 0.3, sVal, sliderScript);
);
);
sliderScript =
Expr(
STV = Expr(dt << setTableVariable("s", sValTBD));
SubstituteInto(STV, Expr(sValTBD), sVal);
STV;
);
```

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Curlicue Fractals

Very Cool!