【问题标题】:Ways to Plot Spark Dataframe without Converting it to Pandas在不将其转换为 Pandas 的情况下绘制 Spark Dataframe 的方法
【发布时间】:2019-12-07 05:24:48
【问题描述】:

有没有什么方法可以在不将数据帧转换为 pandas 的情况下从 Spark 数据帧中绘制信息?

做了一些在线研究,但似乎找不到方法。我需要将这些图自动保存为 .pdf,因此使用 databricks 中的内置可视化工具将不起作用。

现在,这就是我正在做的事情(例如):

# df = some Spark data frame 
df = df.toPandas()
df.plot()
display(plt.show())

我想制作折线图、直方图、条形图和散点图,而不需要将我的数据框转换为 pandas 数据框。 谢谢!

【问题讨论】:

    标签: python pandas pyspark databricks


    【解决方案1】:

    显示功能仅在databricks内核笔记本中可用,在spark中不可用

    【讨论】:

      【解决方案2】:

      您可以收集数据,然后使用 matplotlib 绘制它。从那里您可以轻松地将输出保存为 pdf。在 python 中收集数据的简单示例:

      spark.sql('SELECT * FROM <your table>').collect()
      

      【讨论】:

        【解决方案3】:

        只是将display(&lt;dataframe-name&gt;)函数与Spark数据框一起使用,官方文档Visualizations如下所述。

        然后,选择绘图类型并更改其选项,如下图所示,直接显示带有火花数据框的图表。

        如果您想显示与您的 pandas 数据框图相同的图表,您当前的方式是唯一的方式。

        【讨论】:

        • 这在 Jupyter 笔记本中似乎对我不起作用。这个答案是专门针对 Databricks 笔记本的吗?
        • 是的,它仅适用于 Databricks。
        猜你喜欢
        • 2017-03-17
        • 1970-01-01
        • 2018-11-30
        • 2018-10-15
        • 2015-12-09
        • 2015-12-22
        • 2018-07-10
        相关资源
        最近更新 更多