在Scala中,是否可以使用Plotly的Scatter3d?

时间:2018-01-21 12:01:17

标签: scala plot plotly

我的目标是在3D空间/图表/图表中显示点。在python中,似乎有可能:https://plot.ly/python/3d-scatter-plots/

但是在Scala中,我没有找到这个对象/类/特性:

  1. 该网站仅提及表面:https://plot.ly/scala/

  2. Plotly的文档不包含Scatter3d,但只包含Scatter,它似乎不支持3D:https://asidatascience.github.io/scala-plotly-client/latest/api/#co.theasi.plotly.Scatter

  3. ThreeDPlot类似乎无法在没有绘制曲面的情况下在3D中显示点:https://asidatascience.github.io/scala-plotly-client/latest/api/#co.theasi.plotly.ThreeDPlot,并且Z坐标集很奇怪(例如Iterable[Iterable[Double]]而不是更容易,例如Iterable[Double]

  4. GitHub页面的演示文稿使用3D点,但仅使用X和Y坐标仅在2D空间中显示:https://github.com/ASIDataScience/scala-plotly-client

2 个答案:

答案 0 :(得分:4)

不幸的是,最新版本还不支持3D散点图。

但是我forked the project并添加了对3D散点图的基本支持。 这是一个可以直接从sbt控制台运行的示例:

"c:\\path\\to\\file"
"c:\\path\\to\\file"

我还打开了a pull request,以便提交审核并可能合并。

答案 1 :(得分:-2)

您可以使用matplotlib(最特别是mplot3d) 考虑到matplotlib本身不支持Scala,您需要在显示之前将scala数据转换为matplotlib格式和/或使用this module

  

Scala + Spark缺少的MatPlotLib

此致