cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Register to attend Discovery Summit 2025 Online: Early Users Edition, Sept. 24-25.
  • New JMP features coming to desktops everywhere this September. Sign up to learn more at jmp.com/launch.

Uncharted

Choose Language Hide Translation Bar

Latest Posts

  • Head Arg Recurse Formula

      inspired by Is there a way to extract columns used in a formula? and Ian@JMPcomment.   dt = New Table( "Get Columns in Formula", Add Rows( 20 ), New Column( "H", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Uniform() ) ), New Column( "W", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Uniform() ) ), New Column( "D", Numeric, "Continuous", Format( "B...

    Craige_Hales Craige_Hales
    Uncharted |
    Dec 24, 2017 7:31 AM
    9254 views | 0 replies
    8476_recursion.PNG
  • Twitter Screen Scraping and FFT-Based Cross Fade

    Transform Use JSL to scrape images from Twitter and experiment with an FFT to cross fade the images.

    Craige_Hales Craige_Hales
    Uncharted |
    Nov 27, 2017 12:41 PM
    2648 views | 0 replies
    transform.png
  • Ellipse

    DavidK asked about drawing the ellipses around data points. I struggled through this a while back and this is a summary of what I puzzled out with help from people that actually know what they are doing. All the mistakes here are mine, comments and corrections welcome!  This picture is the output from Bivariate, produced at the very end of the script. The goal of the script is to calculate the pa...

    Craige_Hales Craige_Hales
    Uncharted |
    Sep 30, 2017 8:42 AM
    8586 views | 1 replies
    8099_EllipseBivar.png
  • Regex

    A bunch of JMP character functions appeared in a previous post: length, substr, contains, etc. They are great for simple things, and you could do hard things with them if you wanted to. But Regex might be better. Regex, short for Regular Expression, is a powerful JSL function for manipulating text. result = regex( sourceText, searchPattern, replaceTemplate, options ); (There are two other functio...

    Craige_Hales Craige_Hales
    Uncharted |
    Sep 30, 2017 8:28 AM
    32451 views | 3 replies
    7963_MirrorRipple.jpg
  • JSL Character String Functions

    Simple Find and Replace JMP's scripting language, JSL, can store numbers, strings, and other objects in variables. A string assignment might look like this:  place = "Cary, North Carolina, USA"; the variable place now holds the string. Here's a set of functions for working with strings in JSL. Place will keep that same string in all the examples. Regex and Pattern Matching are covered in later po...

    Craige_Hales Craige_Hales
    Uncharted |
    Sep 30, 2017 8:25 AM
    77431 views | 3 replies
    7967_brass.jpg
  • Doomsday

    Valentine's day coincides with Doomsday this year.  Again.  The Doomsday rule is neat, here's a JSL snippet to illustrate part of the idea.   For( year = 1901, year <= 2099, year++, // 1900 was not a leap year and 2100 won't be   really =   Day Of Week( Date DMY( if(mod(year,4),3,4), 1, year ) ) == // 3rd day of January, 3 years out of 4   Day Of Week( Date DMY( if(mod(year,4),28,29), 2, year ) ) ...

    Craige_Hales Craige_Hales
    Uncharted |
    Sep 30, 2017 7:03 AM
    5779 views | 0 replies
    No supplied image
  • Control FTP from JMP with JSL

    Here's some JSL to operate FTP through JMP 11's RunProgram function. More about RunProgram below. // this example is specific to Windows because of FTP and RunProgram issues // you'll need to supply a proper site to open and replace // anonymous... with proper credentials. // for the example, build a "junk" directory in the temp folder temp = Convert File Path( "$TEMP", windows ) || "junk"; // no ...

    Craige_Hales Craige_Hales
    Uncharted |
    Sep 30, 2017 6:06 AM
    8006 views | 3 replies
    No supplied image
  • Interpreting GPS coordinates in JPGs

    Coming back from the eclipse You can set your phone to add GPS data to pictures.

    Craige_Hales Craige_Hales
    Uncharted |
    Aug 27, 2017 8:05 AM
    2393 views | 0 replies
    TheLake.png
  • Does Your GPS Know Where You Are?

    GPS Uncertainty Fixing a data collection mistake. Video too.

    Craige_Hales Craige_Hales
    Uncharted |
    Jul 8, 2017 5:35 PM
    2337 views | 0 replies
    gpsWindowSill.png
  • Fast JSON Parsing using Pattern Matching

    Xan posted very cool code to read JSON data into JMP.  Xan noted the JSL was slow loading large JSON files; here's a look at some replacement JSL to make it faster.  (JSON is better suited for small objects, but if you must load 100K or more, this will help.)   Xan's original code has a parsing routine to read the JSON string a character at a time:   the variable pos walks through the length of t...

    Craige_Hales Craige_Hales
    Uncharted |
    Jun 7, 2017 1:44 PM
    12272 views | 1 replies
    large-3.png
  • Tile JSL part 3

    Using the kites and darts from part 2, make a 3D surface. Some of the Scene3D code was borrowed from some of the examples that ship with JMP. This JSL was written to make the video clip. Buried in it are some scaling and animation controlling values, tweaked to make the video just right. There is also a path to a directory on the desktop that will be filled with numbered bitmaps. Part 4 will expl...

    Craige_Hales Craige_Hales
    Uncharted |
    May 26, 2017 2:17 PM
    2580 views | 0 replies
    8428_x000008.gif
  • Tile JSL part 2

      In part 1 the penrose tiling generator stored its results in a data table. The graph in part 1 contained lines of different gray levels, indicating how many times each line was drawn. The tiles are not emitted from the generator as polygons, just a bunch of loose and repeated edges. Part 2 JSL won't be using the data table; instead an associative array will collect the line segments using their...

    Craige_Hales Craige_Hales
    Uncharted |
    May 26, 2017 2:03 PM
    2586 views | 0 replies
    8425_penroseLarge.png
  • Tile JSL part 1

    Here's the first part of the code for the video in the previous post.  This is a straight-forward translation/conversion of the reference.  The generator recursively subdivides the starting space, using a set of rules that make a valid Penrose tiling.  Sorry, can't explain the rules, just the code to apply them. // http://martinpblogformasswritingproject.blogspot.com/2011/06/penrose-tiling-in-pyp...

    Craige_Hales Craige_Hales
    Uncharted |
    May 26, 2017 1:48 PM
    4163 views | 0 replies
    8424_penroseSmall.png
  • JSL Set Operations

    Overlapping red, green, blue rings Using Associative Arrays as sets. Intersect, Union, Difference.

    Craige_Hales Craige_Hales
    Uncharted |
    May 18, 2017 4:02 PM
    3565 views | 1 replies
    set.png
  • Introspection

    A closer look at JSL expressions

    Craige_Hales Craige_Hales
    Uncharted |
    Feb 28, 2017 10:20 AM
    10154 views | 5 replies
    No supplied image
  • What is Life?

    Animated gif of Gosper's glider gun, tilted 30 degrees JSL to power a glider gun

    Craige_Hales Craige_Hales
    Uncharted |
    Feb 18, 2017 6:14 PM
    2429 views | 0 replies
    lifeSquare.gif
  • Dark Corners

    Craige_Hales Craige_Hales
    Uncharted |
    Feb 10, 2017 5:41 AM
    2442 views | 0 replies
    Pleiades.png
  • Kissing Circles

    Apollonian circles video of Apollonian Gasket and code to make your own

    Craige_Hales Craige_Hales
    Uncharted |
    Feb 4, 2017 5:31 AM
    2735 views | 1 replies
    apolloniancircles.png
  • Back Reference

    The third argument to regex is a powerful replacement generator.

    Craige_Hales Craige_Hales
    Uncharted |
    Feb 4, 2017 5:07 AM
    7847 views | 5 replies
    LongLongAgo.jpg
  • Backtracking Secrets

    The aphorism "If at first you don't succeed, try, try again" is formalized in pattern matching in a process called backtracking. Backtracking is how the matcher checks out all the possible combinations that might match. This post uses some secret features in JMP's pattern matcher to expose the backtracking process. The single statement below is a moderately complicated pattern match.  But even si...

    Craige_Hales Craige_Hales
    Uncharted |
    Feb 1, 2017 5:04 AM
    2415 views | 0 replies
    8075_UnderTheHood.jpg