2016-09-19 108 views
4

我正在使用PySpark內核通過Apache Toree安裝在Jupyter Notebook使用Anaconda v4.0.0Python 2.7.11)。從Hive獲得了表之後,使用matplotlib/panda繪製在Jupyter筆記本的一些圖形,教程如下如下:如何讓iPython inbuild magic命令在Jupyter筆記本Pyspark內核中工作?

%matplotlib inline 
import pandas as pd 
import numpy as np 
import matplotlib.pyplot as plt 

# Set some Pandas options 
pd.set_option('display.notebook_repr_html', False) 
pd.set_option('display.max_columns', 20) 
pd.set_option('display.max_rows', 25) 

normals = pd.Series(np.random.normal(size=10)) 
normals.plot() 

我被卡在第一個鏈接時,我試圖用%matplotlib直列這表明

Name: Error parsing magics! 
Message: Magics [matplotlib] do not exist! 
StackTrace: 

看着Toree MagicMagicManager,我意識到,%matplotlib呼籲MagicManager代替,打造神奇的命令iPython

Apache Toree - PySpark可以使用iPython in-build magic命令嗎?

+0

安裝'matplotlib'? – zero323

+2

@ zero323我可以導入'matplotlib',但是當我嘗試在Jupyter筆記本控制檯上運行'%matplotlib inline'時顯示'16/09/20 09:40:24錯誤magic.MagicManager:找不到matplotlib的魔法一種獲得iPython魔法的方法? – Angletear

回答

1

我對PySpark和magic命令做了一個變通辦法,而不是安裝Toree PySpark kernel我正在使用PySpark directly on Jupyter Notebook

  1. 下載並安裝Anaconda2 4.0.0

  2. 下載Spark 1.6.0預建的Hadoop 2.6

  3. 追加~/.bashrc使用以下命令,然後輸入source ~/.bashrc更新環境變量

    #加入到運行火花
    export PATH =「{your_spark_dir }火花/ sbin目錄:$ PATH」
    出口PATH = 「{your_spark_dir}火花/斌:$ PATH」

    #添加到啓動羣集模式
    出口JAVA_HOME =/usr/lib目錄/ JVM/java的火花應用-8-的openjdk-AMD64/JRE

    #下兩行是可選的,僅火花羣集 出口HADOOP_CONF_DIR = {your_hadoop_conf}/Hadoop的CONF
    出口YARN_CONF_DIR = {your_hadoop_conf}需要/ Hadoop的CONF

    #由Anaconda2 4.0.0安裝程序添加
    出口PATH = 「{your_anaconda_dir} /蟒蛇/斌:$ PATH」

    #添加到jupyter筆記本
    出口PYSPARK_DRIVER_PYTHON = {your_anaconda_dir} /蟒蛇/斌/ jupyter
    出口PYSPARK_DRIVER_PYTHON_OPTS =「筆記本運行pyspark - -NotebookApp.open_browser = False --NotebookApp.ip ='0.0.0.0'--NotebookApp。端口= 8888"
    出口PYSPARK_PYTHON = {your_anaconda_dir} /蟒蛇/斌/ Python的

運行Jupyter筆記本

  1. pyspark --master=yarn --deploy-mode=client開始運行筆記本PySpark in cluster mode

  2. 打開瀏覽器並輸入IP_ADDRESS_OF_COMPUTER:8888

免責聲明
這只是一種變通方法和解決問題,請讓我知道,如果你發現了一種用於Toree PySpark IPython中inbuild魔法指揮工作的不是實際的方式。魔術指令如%matplotlib notebook

相關問題