# PlotX3D

**URL:** https://talk.observablehq.com/t/plotx3d/5158
**Category:** Show and tell
**Created:** [June 3, 2021, 9:26pm UTC](https://talk.observablehq.com/t/plotx3d/5158 "2021-06-03T21:26:07Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![mcmcclur](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mcmcclur/32/2364_2.png) [@mcmcclur](https://talk.observablehq.com/u/mcmcclur)
#### Post date: [June 3, 2021, 9:26pm UTC](https://talk.observablehq.com/t/plotx3d/5158/1 "2021-06-03T21:26:08Z")

</div>

As we all know, Observable is a great platform for creating 2D graphics to dynamically illustrate data. There area a growing number of tools (like [Plot](https://observablehq.com/@observablehq/plot)) that make this easier. I’ve just published [a collection](https://observablehq.com/collection/@mcmcclur/plotx3d) of 15 notebooks intended to make to generate mathematical graphics in 3D. I hope some folks interested in mathematical and scientific visualization in 3D find this useful!

Here’s the main, organizational notebook:

> **[PlotX3D](https://observablehq.com/@mcmcclur/plotx3d)**
>
> Several tools have been developed on Observable to make it easy to create two-dimensional, mathematical plots, like: Funplot, Plotter, and Function Plot. Those all provide a simple, declarative syntax to leverage more complicated tools like D3 to...

A few of the fun examples include:

- [Examples of parametric surfaces](https://observablehq.com/@mcmcclur/examples-of-parametric-surfaces)
- [Disks for a solid of revolution](https://observablehq.com/@mcmcclur/disks-for-a-solid-of-revolution)
- [Non-orientability of a Mobius strip](https://observablehq.com/@mcmcclur/non-orientability-of-a-mobius-strip)
- [The x^x-spindle](https://observablehq.com/@mcmcclur/the-xxx-xxx-spindle)

 ![Screen Shot 2021-06-03 at 5.08.35 PM](https://canada1.discourse-cdn.com/flex030/uploads/observablehq/original/2X/f/f266cfd00be0957e1867c371c1caf27aa732f3fb.jpeg)

---

<div class="post-metadata">

### Author: ![vezwork](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/vezwork/32/5196_2.png) [@vezwork](https://talk.observablehq.com/u/vezwork)
#### Post date: [June 30, 2021, 1:17am UTC](https://talk.observablehq.com/t/plotx3d/5158/2 "2021-06-30T01:17:56Z")

</div>

Really cool. I enjoyed the main/organizational notebook, the examples were very clear and well chosen.

I was able to play around with the plot for the saddle function and get some interesting results without any effort. I love that you can simply pass a function of the form `(x: number, y:number) => [number, number, number]` to `createSurface` and get a nice looking, and interactive, graph out.

The documentation around show\_x3d and create\_\* functions, although relatively minimal, gave me everything I was looking for on first pass. I was able to find out more about the `createSurface` function. It was also cool to glance at the other 2 “complicated” create functions.

Keep up the development, the explanation, and the examples. This 3D plotting is really easy to get into, I hope to create something with it.

---

<div class="post-metadata">

### Author: ![mcmcclur](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mcmcclur/32/2364_2.png) [@mcmcclur](https://talk.observablehq.com/u/mcmcclur)
#### Post date: [June 30, 2021, 1:49am UTC](https://talk.observablehq.com/t/plotx3d/5158/3 "2021-06-30T01:49:55Z")

</div>

@vezwork Thanks so much! I will definitely be developing it more, particularly as I (and maybe others) use it in my own work.
