如何使用Matplotlib绘制PySpark SQL结果?
要使用Matplotlib绘制 PySpark SQL 结果 , 我们可以按照以下步骤进行-
- 设置图形大小并调整子图之间和周围的填充。
- 获取作为Spark功能主入口点的实例。
- 获取与存储在Hive中的数据集成的Spark SQL的一种变体的实例。
- 将记录列表作为元组。
- 将本地Python集合分发以形成RDD。
- 将列表记录映射为DB模式。
- 获取模式实例以在 “my_table” 中进行输入。
- 将记录插入表中。
- 读取SQL查询,检索记录。
- 将提取的记录转换为数据帧。
- 使用 name 属性设置索引并对其进行绘制。
- 要显示图形,使用 show() 方法。
例子
from pyspark.sql import Row
from pyspark.sql import HiveContext
import pyspark
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
sc = pyspark.SparkContext()
sqlContext = HiveContext(sc)
test_list = [(1, 'John'), (2, 'James'), (3, 'Jack'), (4, 'Joe')]
rdd = sc.parallelize(test_list)
people = rdd.map(lambda x: Row(id=int(x[0]), name=x[1]))
schemaPeople = sqlContext.createDataFrame(people)
sqlContext.registerDataFrameAsTable(schemaPeople, "my_table")
df = sqlContext.sql("Select * from my_table")
df = df.toPandas()
df.set_index('name').plot()
plt.show()