Three-dimensional scatter plots

A scatter plot is one of the simplest plots that help us view the relationship between two numeric variables. In this recipe, we will see how we can produce the scatter plot from three variables with a 3D plot. A 3D plot is good way to visualize the pattern of relation among three variables at a time. Sometimes, it could happen that a 3D plot is not depicting the relation pattern in a good shape; in this case, we might rotate the plot to find out the correct pattern. However, in this recipe, we will create a simple 3D scatter plot using three continuous variables.

To produce a three-dimensional scatter plot, we need to load the scatterplot3d library. If it is not already installed, then we can install it using the following command:

We will use the airquality dataset for this recipe.

The primary command to produce a three-dimensional scatter plot is as follows:

How to do it…

The scatterplot3d function seeks three numeric variables as input in order to produce the plot in a three-dimensional space. If we do not specify a third variable, then it still produces a 3D scatter plot. If we specify only two variables, then two axes are represented by two variables, and the third axis is represented by a sequential number; the sequential number here acts as third variable.

After creating the basic plot, we can add more information, such as a vertical drop line, by specifying the type="h" argument. Also, as we mentioned, if we do not specify the third variable, then it still produces the plot. An example of this situation is as follows:

There's more…

The code to create a three-dimensional scatter plot is as follows but this time we will only use two variable in the input. The third variable is not specified but still it will create a 3D scatter plot assuming the third variable is a sequential number: