小编Iva*_*anA的帖子

使用Plotly渲染MATLAB补丁面fig2plotly()

问题:尝试导出patch在MATLAB中使用命令渲染的多边形时fig2plotly,最终输出缺少指定的面颜色.

也许演示会有所帮助.采用以下顶点和面来定义一个立方体(从MATLAB文档中取出):

vert = [0 0 0;1 0 0;1 1 0;0 1 0;0 0 1;1 0 1;1 1 1;0 1 1];
fac = [1 2 6 5;2 3 7 6;3 4 8 7;4 1 5 8;1 2 3 4;5 6 7 8];
Run Code Online (Sandbox Code Playgroud)

并使用patch命令渲染它,向面添加一些颜色信息:

patch('Vertices',vert,'Faces', fac, 'FaceVertexCData',hsv(8),'FaceColor','interp')
Run Code Online (Sandbox Code Playgroud)

并在3D中查看:

view(3)
axis vis3d
Run Code Online (Sandbox Code Playgroud)

这给出了一个很好的立方体,表面上有插值颜色值.

好立方体

现在,如果我们尝试使用以下fig2plotly命令将其导出到Plotly :

fig2plotly(gcf)
Run Code Online (Sandbox Code Playgroud)

它返回一个空的立方体(plotly链接):

空的立方体

换句话说,已捕获线信息,但不捕获面.即使我们试图保留MATLAB样式,我们仍然会丢失面部信息:

fig2plotly(gcf, 'strip', false)
Run Code Online (Sandbox Code Playgroud)

有什么建议?

matlab surface plotly

13
推荐指数
1
解决办法
435
查看次数

标签 统计

matlab ×1

plotly ×1

surface ×1