如何在pyspark中绘制直方图

如何在pyspark中绘制直方图,pyspark,Pyspark,我是pyspark的新手,我有如下表格,我想绘制这个df的直方图,x轴将包括“单词”,x轴将包括“计数”列。你知道吗 word count Akdeniz’in 14 en 13287 büyük 3168 deniz 1276 festivali: 6 首先,直方图不是显示字数的正确图表类型。柱状图有助于可视化变量的分布,相反,柱状图用于比较变量(有关更多信息,请阅读本文)。使用以下代码

我是pyspark的新手,我有如下表格,我想绘制这个df的直方图,x轴将包括“单词”,x轴将包括“计数”列。你知道吗

  word         count
  Akdeniz’in    14
  en            13287
  büyük         3168
  deniz         1276
  festivali:    6

首先,直方图不是显示字数的正确图表类型。柱状图有助于可视化变量的分布,相反,柱状图用于比较变量(有关更多信息,请阅读本文)。使用以下代码,您可以为示例创建条形图:

from matplotlib import pyplot 
l = [(  'Akdeniz’in',    14)
     ,('en'         ,   13287)
     ,('büyük'       ,  3168)
     ,('deniz'        , 1276)
     ,('festivali:'   , 6)]
df = spark.createDataFrame(l,['word','count'])
#Add values to a list (not recommend when you have a huge dataframe)
bla = df.collect()
#create a numeric value for every label
indexes = list(range(len(bla)))

#split words and counts to different lists 
values = [r['count'] for r in bla]
labels = [r['word'] for r in bla]

#Plotting
bar_width = 0.35

pyplot.bar(indexes, values)

#add labels
labelidx = [i + bar_width for i in indexes] 
pyplot.xticks(labelidx, labels)
pyplot.show()

可能是@pault的重复我试过了,但我得到的错误与“word”列不是整数有关,因此我无法绘图,有什么建议吗?