How do I plot a function with 3 variables, either in 3d or a 2d contour plot.

```
U(x,y)=16*log(x)+9*log(y)
```

How do I plot a function with 3 variables, either in 3d or a 2d contour plot.

```
U(x,y)=16*log(x)+9*log(y)
```

http://docs.juliaplots.org/latest/generated/gr/#gr-ref22

http://docs.juliaplots.org/latest/generated/gr/#gr-ref50

1 Like

How about this?

```
using StatsPlots
U(x,y)=16*log(x)+9*log(y)
x = 0.1:0.1:2.0
y = 0.1:0.1:2.0
z = [U(i,j) for i in x, j in y]
p = plot(
x,
y,
z,
linetype=:wireframe,
legend=false,
xlabel="x",
ylabel="y",
zlabel="z"
)
plot!(
x,
y,
z,
linetype=:surface,
legend=false,
xlabel="x",
ylabel="y",
zlabel="z",
alpha=0.8
)
```

1 Like

That should work. Is there a way to do a 2d contour plot?

Just call `contour`

instead of `plot`

and omit the `linetype`

keyword argument. If you have a look at the links that @Jeff_Emanuel and @odow replied with you’ll find this very quickly. Just navigate to the section for your backend of choice (e.g. GR, Plotly) and push `Ctrl + f`

on your keyboard; then, type `contour`

and you can go straight to the section of the docs that demonstrate contour plot examples.

EDIT: actually, you can just do `linetype=:contour`

and not change anything else.

1 Like

this looks good, but I don’t know how to limit the y range to positive values