Как нарисовать Scatter с помощью Zeppelin, который содержит 3 типа точек - PullRequest
0 голосов
/ 07 ноября 2018

Я работаю с ноутбуком zeppelin, используя искровой интерпретатор, хочу получить разброс, но я хочу, чтобы эти очки имели 3 разных цвета.

Я интегрировал matplotlib в zeppelin, потому что на одном и том же рисунке просто построить разные кадры данных панд.

      import matplotlib.pyplot as plt
      from matplotlib.pyplot import figure

      # get object from ResourcePool

      MemArb=sqlContext.table("MemArb")
      VoisArb=sqlContext.table("VoisArb")
      SousTest=sqlContext.table("SousTest")

      MemArb=MemArb.toPandas()
      VoisArb=VoisArb.toPandas()
      SousTest=SousTest.toPandas()

      x_client = SousTest["derx"].
      astype('float').iloc[0]
      y_client = SousTest["dtrx"].
      astype('float').iloc[0]

      x_memeArbre = MemArb['valx'].astype('float')
      y_memeArbre = MemArb['valOx'].astype('float')
      x_voisinArbre = VoisArb['vax'].astype('float')
      y_voisinArbre = VoisArb['valOx'].astype('float')

      y_voisinArbre.count()
      figure(num=None, figsize=(10, 8), dpi=80, facecolor='w', edgecolor='k')
      plt.scatter(x_client, y_client, s=90, color='b')
      plt.scatter(x_memeArbre,y_memeArbre,s=10, color='r')
      plt.scatter(x_voisinArbre, y_voisinArbre, s=10, color='b')
      plt.title('Nuage de points avec Matplotlib')
      plt.xlabel('ONx')
      plt.ylabel('OLx')
      plt.show()

Есть ли решение для получения того же результата, используя Zeppelin без matplotlib

1 Ответ

0 голосов
/ 17 января 2019

Вы можете использовать функцию createOrReplaceTempView в кадре данных, а затем писать SQL-запросы для получения данных. Текущий Zeppelin (0.8.0) имеет график рассеяния среди предлагаемых встроенных визуализаций. Просто убедитесь, что каждая точка данных имеет соответствующий столбец с указанием цвета.

...