Coordinate systems are used to help us visualize data, functions, relationships between variables, and much more. The one we are most familiar with is called the Cartesian Coordinate System. It is special because it places the axes (dimensions) orthogonal to each other. This is a natural and useful arrangement of variables, resulting in graphs that are natural to interpret.
However, there is a drawback for using orthogonal axes: there is no room to place more than three dimensions. Our vision and visualization skills are limited to three spatial dimensions. Meaning that if we want (or need) to visualize more than three dimensions, we need to use different types of encodings: color, animation, etc.
Are we then doomed to never visualize truly high-dimensional data? No. There are many kinds of coordinate systems that we can use to help us. The one we'll look at today is called the Parallel Coordinate System. Rather than placing axes orthogonal to each other, in Parallel coordinates, all axes are parallel to each other. As such, we can place as many dimensions as is reasonable; far more than we can using Cartesian coordinates.
Of course, there are challenges for using Parallel coordinates, with the main one being a lack of interpretability. With some training and knowledge of when it's appropriate to use Parallel coordinate plots, we'll overcome the interpretability hurdle. And, once that happens, we can be confident of our analyses when we look at higher-dimensional data that would be difficult to visualize in Cartesian coordinates.
To answer this, let's look at a simple example using both Cartesian Coordinates and Parallel Coordinates. We're going to visualize the function: \( y = x \). To help build intuition, click and drag to brush over points on the Cartesian plane. This will help you see how the two graphs are connected. All graphs in this section and the next section are brushable.
Cool, right?
Let's look at it a bit more closely. The blue points on the Cartesian plane are the same as the blue lines on the Parallel coordinate graph. This takes a while to get used to.
To build intuition, let's look at another linear function: \( y = x + 1 \).
Interesting. The lines in the Parallel coordinate plot are still parallel to each other, but now they have a small slope. And, as many of us are already familiar with, the Cartesian coordinate graph shows the \( y = x \) line translated one unit upward on the y-axis.
Since the slope of the parallel coordinate lines changed when modifying the y-intercept, let's look at what altering the slope of the equation does. Let's look at the function: \( y = 3x \).
What is going on now? The lines aren't parallel anymore. This looks nonlinear now, but remember, this is in Parallel Coordinates. Perhaps a better way to think about this is to think scaling. In other words, each x-value is mapped to a y-value that has been stretched by three times the original x-value.
One thing to watch for in particular is the scaling of each axis. Just like how functions and data can be distorted by changing the scales of axes in Cartesian coordinates, Parallel coordinates are also susceptible to this kind of manipulation.
As an example, let's look at the function: \( y = 3x \) once again, but this time with different scales.
By making the y-axis scale three times as large as the x-axis scale, the function looks like \( y = x \) rather than \( y = 3x \). This distortion is present on both coordinate systems.
In the previous section, some of the Parallel coordinate graphs' lines seemed nonlinear at first glance. In this section, let's take a look at some actual nonlinear functions. The first one we'll look at is the parabolic function: \( y = x^2 \).
Try brushing to get a feel for how the points connect between the graphs of the two coordinate systems.
The next nonlinear function we'll look at is the exponential function: \( y = e^x \).
Now let's look at the fascinating trigonometric functions! The first one is: \( y = \sin x \). Check out how the oscillating motion is captured in Parallel Coordinates.
Next, we have: \( y = \cos x \).
And here, we have: \( y = \tan x \).
Note that it's easier to show Parallel Coordinates with points instead of lines, so each function shown will be a discrete sample of points rather than their continuous forms. This can cause issues, especially when showing functions that have asymptotes where the y-values tend to \( \text{Infinity } ( \infty ) \) and/or \( \text{-Infinity } ( -\infty ) \).
\(y = \tan x \) has periodic asymptotes, and the y-values tend to Infinity and -Infinity at those asymptotes so quickly that it's hard to capture them well with an evenly-distributed sample of points.
Another interesting function to look at is: \( y = \frac{1}{x} \).
\( y = \frac{1}{x} \) has a vertical asymptote at \( x = 0 \), which makes sense since \( \frac{1}{0} \) is undefined. As you can see, as we approach \( x = 0 \) from the left, the values tend toward \( -\infty \). And, as we approach \( x = 0 \) from the right, the values tend toward \( \infty \).
\( y = \frac{1}{x} \) has a horizonal asymptote, too. No matter how far to the left or right we go along the x-axis, the y-values will never reach \( 0 \). But, they will continue to get closer and closer as we go further out.
Here's another function with a vertical asymptote: \( y = \frac{1}{x^2} \).
Here's the Standard Normal function: \( \frac{1}{\sqrt{2 \pi}} e^{\frac{-1}{2} x^2} \)
This one is sometimes called the Sigmoid function : \( y = \frac{e^x}{e^x + 1} \)
And here's one that looks similar to the Sigmoid: \( y = \frac{1}{e^x + 1} \)