Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีใช้ Matplotlib เพื่อพล็อตผลลัพธ์ PySpark SQL


หากต้องการใช้ Matplotlib เพื่อลงจุด PySpark SQL ผลลัพธ์, เราสามารถทำตามขั้นตอนต่อไปนี้:

  • กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
  • รับอินสแตนซ์ที่เป็นจุดเริ่มต้นหลักสำหรับฟังก์ชัน Spark
  • รับอินสแตนซ์ของตัวแปร Spark SQL ที่ผสานรวมกับข้อมูลที่จัดเก็บไว้ใน Hive
  • สร้างรายการบันทึกเป็นทูเพิล
  • แจกจ่ายคอลเล็กชัน Python ในพื้นที่เพื่อสร้าง RDD
  • แมปเรคคอร์ดรายการเป็นสคีมา DB
  • รับอินสแตนซ์สคีมาเพื่อเข้าสู่ "my_table"
  • แทรกบันทึกลงในตาราง
  • อ่านแบบสอบถาม SQL เรียกระเบียน
  • แปลงบันทึกที่ดึงมาเป็น data frame
  • ตั้งค่าดัชนีด้วย ชื่อ คุณลักษณะและพล็อตพวกเขา
  • หากต้องการแสดงรูป ให้ใช้ 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()

ผลลัพธ์

วิธีใช้ Matplotlib เพื่อพล็อตผลลัพธ์ PySpark SQL