在 Julia 中使用 Plotly 设置 3d 的相机设置

Posted

技术标签:

【中文标题】在 Julia 中使用 Plotly 设置 3d 的相机设置【英文标题】:Setting the camera setting for a 3d using Plotly in Julia 【发布时间】:2020-09-24 08:09:09 【问题描述】:

我在交互式 3D 绘图中有一个曲面和一个点。但我想改变一个人在开始时看到的第一个视图的角度,使表面看起来是一条线。我不能改变表面,因为那是基于给定的数据。所以我需要找到一种方法来设置相机设置。我发现这在使用 R 和 Python 时是可能的,但它如何与 Julia 一起工作?

有人可以帮我吗?

这是一个简单的代码示例:

using Plotly

x = [-10,-10,10];
y = [-10,10,-10];
z = [10,-5,-10];
trace1 = mesh3d(color = "red",x=x,y=y,z=z,scaleratio = 1)
trace2 = Plotly.scatter3d(color = "blue";x=[3], y=[1],z = [2], mode="markers")
layout = Layout(;scene=attr(;xaxis=attr(;range=[-10, 10]),yaxis=attr(;range=[-10, 10]),zaxis=attr(;range=[-10, 10]), aspectratio=attr(x=1, y=1, z=1)))
plt = Plotly.plot([trace1,trace2],layout)

【问题讨论】:

【参考方案1】:

我找到了一种将 Plots 与后端 pylplot() 结合使用的方法。 如果其他人对此感兴趣,我将发布解决方案:

pyplot()

angle1 = 10;
angle2 = 30; 

x = [-10,-10,10];
y = [-10,10,-10];
z = [10,-5,-10];
plt = surface([(x[1],y[1],z[1]),(x[2],y[2],z[2]),(x[3],y[3],z[3])],alpha=.1, fillalpha=.1, camera = (angle1,angle2), xlabel = "x", ylabel = "y", zlabel = "z")

【讨论】:

以上是关于在 Julia 中使用 Plotly 设置 3d 的相机设置的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Plotly 3D 散点图中设置点标记的样式/格式?

可视化神器Plotly绘制3D图

根据 julia 中的数据绘制 3d 表面(使用绘图)

使用 Plotly Scatter3d 标记太暗

为啥我的 3D Plotly Scatterplot 的大小会随机变化?

使用 Plotly 绘制动画 3D 曲面图