Kann nicht ausgeführt werden, matplotlib mit Apache Zeppelin
Bin ich mit dem Zeppelin und matplotlib zu visualisieren einige Daten. Ich versuche Sie aber fehl mit dem folgenden Fehler. Könnten Sie mir einige Hinweise wie es zu lösen ist?
%pyspark
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.ylabel('some numbers')
plt.show()
Und hier ist der Fehler, ich habe
Traceback (most recent call last):
File "/tmp/zeppelin_pyspark-3580576524078731606.py", line 235, in <module>
eval(compiledCode)
File "<string>", line 1, in <module>
File "/usr/lib64/python2.6/site-packages/matplotlib/pyplot.py", line 78, in <module>
new_figure_manager, draw_if_interactive, show = pylab_setup()
File "/usr/lib64/python2.6/site-packages/matplotlib/backends/__init__.py", line 25, in pylab_setup
globals(),locals(),[backend_name])
File "/usr/lib64/python2.6/site-packages/matplotlib/backends/backend_gtkagg.py", line 10, in <module>
from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK, FigureCanvasGTK,\
File "/usr/lib64/python2.6/site-packages/matplotlib/backends/backend_gtk.py", line 8, in <module>
import gtk; gdk = gtk.gdk
File "/usr/lib64/python2.6/site-packages/gtk-2.0/gtk/__init__.py", line 64, in <module>
_init()
File "/usr/lib64/python2.6/site-packages/gtk-2.0/gtk/__init__.py", line 52, in _init
_gtk.init_check()
RuntimeError: could not open display
Ich auch versuchen, fügen Sie diese Zeilen, ist aber immer noch nicht arbeiten
import matplotlib
matplotlib.use('Agg')
Du musst angemeldet sein, um einen Kommentar abzugeben.
Folgende funktioniert bei mir mit Spark & Python 3:
Zeppelin Dokumentation deutet darauf hin, dass die folgenden arbeiten sollten:
Funktioniert das nicht bei mir mit Python 3, aber sieht angegangen werden, mit der bald-zu-sein-verschmolzen PR #1213.
sudo apt-get install python-matplotlib
Beachten Sie, dass der Zeppelin 0.7.3, matplotlib integration ist viel mehr nahtlos, sodass die hier beschriebenen Methoden sind nicht mehr notwendig. https://zeppelin.apache.org/docs/latest/interpreter/python.html#matplotlib-integration
Als pro @eddies Vorschlag, ich habe versucht, und das ist was für mich gearbeitet auf Zeppelin 0.6.1 python 2.7
Ändern:
mit
Komplettes code-Beispiel Spark 2.2.0 + Python ist3(anaconda3.5):
Ich würde vorschlagen, Sie verwenden IPython/IPySpark Dolmetscher in zeppelin 0.8.0, die bald veröffentlicht werden soll. Die matplotlib-integration in ipython ist fast das gleiche wie jupyter. Es gibt ein tutorial https://www.zepl.com/viewer/notebooks/bm90ZTovL3pqZmZkdS9lN2Q3ODNiODRkNjA0ZjVjODM1OWZlMWExZjM4OTk3Zi9ub3RlLmpzb24