I am building a library of functions that I would like to distribute as a single JSL file. But some of my functions reference image files. In this blog post I will explain the process I use for serialising the image file so that it can be embedded directly into my JSL script.
One of the most important tasks that a computer can do it repetition of tasks. That’s why iteration is such an important element of JSL code. In version 16 of JMP, new syntax was introduced to describe the way we iterate over elements of structures such as lists and matrices.
Zip files are a common file format for sharing collections of files or for compressing large files. I’m going to take a look at how JSL can be used to handle these files without first manually unzipping the file.
The idea of object-orientation is not new to JSL, but user-created objects require a complex code structure that wraps data and functions into namespaces (for example, see the navigation wizard).
In version 14, there is explicit support for classes which dramatically simplifies the process of creating reusable objects. I thought I would introduce them by means of a real- example: a notification window that shows progress when stepping through a sequence of time-consuming steps.
A wizard is a familiar user-interface mechanism for scrolling through a sequence of steps of more generally scrolling through a series of content. In this post I illustrate how this functionality can be implemented through the use of an object-oriented framework. (more…)
JSL is often described as a scripting language. Personally I think that doesn’t do it justice. I prefer to think of it as a programming language. The difference? For me an obvious difference is that instead of using hard-coded values I want to use variables. In particular I want to use variables to handle column references.
I was recently asked a question about updating display boxes. Display boxes are the building blocks of JMP output windows. Fundamentally there are two methods of updating these display boxes, which I will take a closer look at. (more…)
I’m sure there is a more technically correct term for this: I use the phrase segmented regression to describe the process whereby I select a segment of data within a curve and build a regression model for just that segment.
I have some code to aid the process. The code illustrates how to perform regression on-the-fly as well as how to utilise the MouseTrap function to handle mouse movement events.