Added: zeppelin/site/docs/0.9.0/interpreter/python.html
URL:
http://svn.apache.org/viewvc/zeppelin/site/docs/0.9.0/interpreter/python.html?rev=1884775&view=auto
==============================================================================
--- zeppelin/site/docs/0.9.0/interpreter/python.html (added)
+++ zeppelin/site/docs/0.9.0/interpreter/python.html Thu Dec 24 14:36:01 2020
@@ -0,0 +1,683 @@
+
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>Apache Zeppelin 0.9.0 Documentation: Python 2 & 3 Interpreter for
Apache Zeppelin</title>
+ <meta name="description" content="Python is a programming language that
lets you work quickly and integrate systems more effectively.">
+ <meta name="author" content="The Apache Software Foundation">
+
+ <!-- Enable responsive viewport -->
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+ <!--[if lt IE 9]>
+ <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+ <![endif]-->
+
+ <link
href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"
rel="stylesheet">
+
+ <!-- Le styles -->
+ <link
href="/docs/0.9.0/assets/themes/zeppelin/bootstrap/css/bootstrap.css"
rel="stylesheet">
+ <link href="/docs/0.9.0/assets/themes/zeppelin/css/style.css?body=1"
rel="stylesheet" type="text/css">
+ <link href="/docs/0.9.0/assets/themes/zeppelin/css/syntax.css"
rel="stylesheet" type="text/css" media="screen" />
+ <!-- Le fav and touch icons -->
+ <!-- Update these with your own images
+ <link rel="shortcut icon" href="images/favicon.ico">
+ <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+ <link rel="apple-touch-icon" sizes="72x72"
href="images/apple-touch-icon-72x72.png">
+ <link rel="apple-touch-icon" sizes="114x114"
href="images/apple-touch-icon-114x114.png">
+ -->
+
+ <!-- Js -->
+ <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+ <script
src="/docs/0.9.0/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/docs.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/anchor.min.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/toc.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/lunr.min.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/search.js"></script>
+
+ <!-- atom & rss feed -->
+ <link href="/docs/0.9.0/atom.xml" type="application/atom+xml"
rel="alternate" title="Sitewide ATOM Feed">
+ <link href="/docs/0.9.0/rss.xml" type="application/rss+xml"
rel="alternate" title="Sitewide RSS Feed">
+ </head>
+
+ <body>
+
+ <div id="menu" class="navbar navbar-inverse navbar-fixed-top"
role="navigation">
+ <div class="container navbar-container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <div class="navbar-brand">
+ <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+ <img
src="/docs/0.9.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50"
+ style="margin-top: -2px;" alt="I'm zeppelin">
+ <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span>
+ <a class="navbar-brand-version" href="/docs/0.9.0"
+ style="font-size: 15px; color: white;"> 0.9.0
+ </a>
+ </a>
+ </div>
+ </div>
+ <nav class="navbar-collapse collapse" role="navigation">
+ <ul class="nav navbar-nav">
+ <li>
+ <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick
Start <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li class="title"><span>Getting Started</span></li>
+ <li><a
href="/docs/0.9.0/quickstart/install.html">Install</a></li>
+ <li><a href="/docs/0.9.0/quickstart/explore_ui.html">Explore
UI</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/tutorial.html">Tutorial</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Run Mode</span></li>
+ <li><a
href="/docs/0.9.0/quickstart/kubernetes.html">Kubernetes</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/docker.html">Docker</a></li>
+ <li><a href="/docs/0.9.0/quickstart/yarn.html">Yarn</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.9.0/quickstart/spark_with_zeppelin.html">Spark with
Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/python_with_zeppelin.html">Python with
Zeppelin</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Usage<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Dynamic Form</span></li>
+ <li><a href="/docs/0.9.0/usage/dynamic_form/intro.html">What
is Dynamic Form?</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Display System</span></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#text">Text Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#html">HTML Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#table">Table Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#network">Network
Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/angular_backend.html">Angular Display
using Backend API</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/angular_frontend.html">Angular Display
using Frontend API</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Interpreter</span></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/interpreter_binding_mode.html">Interpreter
Binding Mode</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/user_impersonation.html">User
Impersonation</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/dependency_management.html">Dependency
Management</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/installation.html">Installing
Interpreters</a></li>
+ <!--<li><a
href="/docs/0.9.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter
Loading (Experimental)</a></li>-->
+ <li><a
href="/docs/0.9.0/usage/interpreter/execution_hooks.html">Execution Hooks
(Experimental)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Other Features</span></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/publishing_paragraphs.html">Publishing
Paragraphs</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/personalized_mode.html">Personalized
Mode</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/customizing_homepage.html">Customizing
Zeppelin Homepage</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/notebook_actions.html">Notebook
Actions</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/cron_scheduler.html">Cron
Scheduler</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/zeppelin_context.html">Zeppelin
Context</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>REST API</span></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/interpreter.html">Interpreter API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/zeppelin_server.html">Zeppelin Server
API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/notebook.html">Notebook API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/notebook_repository.html">Notebook Repository
API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/configuration.html">Configuration API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/credential.html">Credential API</a></li>
+ <li><a href="/docs/0.9.0/usage/rest_api/helium.html">Helium
API</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Setup<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Basics</span></li>
+ <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/setup/basics/hadoop_integration.html">Hadoop
Integration</a></li>
+ <li><a
href="/docs/0.9.0/setup/basics/multi_user_support.html">Multi-user
Support</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Deployment</span></li>
+ <!--<li><a
href="/docs/0.9.0/setup/deployment/docker.html">Docker Image for
Zeppelin</a></li>-->
+ <li><a
href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark
Cluster Mode: Standalone</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark
Cluster Mode: YARN</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark
Cluster Mode: Mesos</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with
Flink, Spark Cluster</a></li>
+ <li><a href="/docs/0.9.0/setup/deployment/cdh.html">Zeppelin
on CDH</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/virtual_machine.html">Zeppelin on VM:
Vagrant</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Security</span></li>
+ <li><a
href="/docs/0.9.0/setup/security/authentication_nginx.html">HTTP Basic Auth
using NGINX</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/shiro_authentication.html">Shiro
Authentication</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/notebook_authorization.html">Notebook
Authorization</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/datasource_authorization.html">Data Source
Authorization</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/http_security_headers.html">HTTP Security
Headers</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Notebook Storage</span></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-s3">S3
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-azure">Azure
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-oss">OSS
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-zeppelinhub">ZeppelinHub
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB
Storage</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Operation</span></li>
+ <li><a
href="/docs/0.9.0/setup/operation/configuration.html">Configuration</a></li>
+ <li><a
href="/docs/0.9.0/setup/operation/proxy_setting.html">Proxy Setting</a></li>
+ <li><a
href="/docs/0.9.0/setup/operation/upgrading.html">Upgrading</a></li>
+ <li><a
href="/docs/0.9.0/setup/operation/trouble_shooting.html">Trouble
Shooting</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Interpreters</span></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a href="/docs/0.9.0/interpreter/spark.html">Spark</a></li>
+ <li><a href="/docs/0.9.0/interpreter/jdbc.html">JDBC</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/python.html">Python</a></li>
+ <li><a href="/docs/0.9.0/interpreter/r.html">R</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.9.0/interpreter/alluxio.html">Alluxio</a></li>
+ <li><a href="/docs/0.9.0/interpreter/beam.html">Beam</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/bigquery.html">BigQuery</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/cassandra.html">Cassandra</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/elasticsearch.html">Elasticsearch</a></li>
+ <li><a href="/docs/0.9.0/interpreter/flink.html">Flink</a></li>
+ <li><a href="/docs/0.9.0/interpreter/geode.html">Geode</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/groovy.html">Groovy</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/hazelcastjet.html">Hazelcast Jet</a></li>
+ <li><a href="/docs/0.9.0/interpreter/hbase.html">HBase</a></li>
+ <li><a href="/docs/0.9.0/interpreter/hdfs.html">HDFS</a></li>
+ <li><a href="/docs/0.9.0/interpreter/hive.html">Hive</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/ignite.html">Ignite</a></li>
+ <li><a href="/docs/0.9.0/interpreter/java.html">Java</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/jupyter.html">Jupyter</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/kotlin.html">Kotlin</a></li>
+ <li><a href="/docs/0.9.0/interpreter/kylin.html">Kylin</a></li>
+ <li><a href="/docs/0.9.0/interpreter/lens.html">Lens</a></li>
+ <li><a href="/docs/0.9.0/interpreter/livy.html">Livy</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/markdown.html">Markdown</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/mongodb.html">MongoDB</a></li>
+ <li><a href="/docs/0.9.0/interpreter/neo4j.html">Neo4j</a></li>
+ <li><a href="/docs/0.9.0/interpreter/pig.html">Pig</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/scalding.html">Scalding</a></li>
+ <li><a href="/docs/0.9.0/interpreter/scio.html">Scio</a></li>
+ <li><a href="/docs/0.9.0/interpreter/shell.html">Shell</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/sparql.html">Sparql</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/submarine.html">Submarine</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">More<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu" style="right: 0; left:
auto;">
+ <li class="title"><span>Extending Zeppelin</span></li>
+ <li><a
href="/docs/0.9.0/development/writing_zeppelin_interpreter.html">Writing
Zeppelin Interpreter</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Helium (Experimental)</span></li>
+ <li><a
href="/docs/0.9.0/development/helium/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_application.html">Writing Helium
Application</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_spell.html">Writing Helium
Spell</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_visualization_basic.html">Writing
Helium Visualization: Basics</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_visualization_transformation.html">Writing
Helium Visualization: Transformation</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Contributing to Zeppelin</span></li>
+ <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/development/contribution/useful_developer_tools.html">Useful
Developer Tools</a></li>
+ <li><a
href="/docs/0.9.0/development/contribution/how_to_contribute_code.html">How to
Contribute (code)</a></li>
+ <li><a
href="/docs/0.9.0/development/contribution/how_to_contribute_website.html">How
to Contribute (website)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>External Resources</span></li>
+ <li><a target="_blank"
href="https://zeppelin.apache.org/community.html">Mailing List</a></li>
+ <li><a target="_blank"
href="https://cwiki.apache.org/confluence/display/ZEPPELIN/Zeppelin+Home">Apache
Zeppelin Wiki</a></li>
+ <li><a target="_blank"
href="http://stackoverflow.com/questions/tagged/apache-zeppelin">Stackoverflow
Questions about Zeppelin</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="/docs/0.9.0/search.html" class="nav-search-link">
+ <span class="fa fa-search nav-search-icon"></span>
+ </a>
+ </li>
+ </ul>
+ </nav><!--/.navbar-collapse -->
+ </div>
+ </div>
+
+
+
+ <div class="content">
+
+<!--<div class="hero-unit Python 2 & 3 Interpreter for Apache Zeppelin">
+ <h1></h1>
+</div>
+-->
+
+<div class="row">
+ <div class="col-md-12">
+ <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h1>Python 2 & 3 Interpreter for Apache Zeppelin</h1>
+
+<div id="toc"></div>
+
+<h2>Overview</h2>
+
+<p>Zeppelin supports python language which is very popular in data analytics
and machine learning.</p>
+
+<table class="table-configuration">
+ <tr>
+ <th>Name</th>
+ <th>Class</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>%python</td>
+ <td>PythonInterpreter</td>
+ <td>Vanilla python interpreter, with least dependencies, only python
environment installed is required</td>
+ </tr>
+ <tr>
+ <td>%python.ipython</td>
+ <td>IPythonInterpreter</td>
+ <td>Provide more fancy python runtime via IPython, almost the same
experience like Jupyter. It requires more things, but is the recommended
interpreter for using python in Zeppelin, see below</td>
+ </tr>
+ <tr>
+ <td>%python.sql</td>
+ <td>PythonInterpreterPandasSql</td>
+ <td>Provide sql capability to query data in Pandas DataFrame via
<code>pandasql</code></td>
+ </tr>
+</table>
+
+<h2>Configuration</h2>
+
+<table class="table-configuration">
+ <tr>
+ <th>Property</th>
+ <th>Default</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>zeppelin.python</td>
+ <td>python</td>
+ <td>Path of the installed Python binary (could be python2 or python3).
+ You should set this property explicitly if python is not in your
<code>$PATH</code>(example: /usr/bin/python).
+ </td>
+ </tr>
+ <tr>
+ <td>zeppelin.python.maxResult</td>
+ <td>1000</td>
+ <td>Max number of dataframe rows to display.</td>
+ </tr>
+ <tr>
+ <td>zeppelin.python.useIPython</td>
+ <td>true</td>
+ <td>When this property is true, <code>%python</code> would be delegated to
<code>%python.ipython</code> if IPython is available, otherwise
+ IPython is only used in <code>%python.ipython</code>.
+ </td>
+ </tr>
+</table>
+
+<h2>Vanilla Python Interpreter (<code>%python</code>)</h2>
+
+<p>The vanilla python interpreter provides basic python interpreter feature,
only python installed is required.</p>
+
+<h3>Matplotlib integration</h3>
+
+<p>The vanilla python interpreter can display matplotlib figures inline
automatically using the <code>matplotlib</code>:</p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="o">%</span><span class="n">python</span>
+
+<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span
class="kn">as</span> <span class="nn">plt</span>
+<span class="n">plt</span><span class="o">.</span><span
class="n">plot</span><span class="p">([</span><span class="mi">1</span><span
class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span
class="mi">3</span><span class="p">])</span>
+</code></pre></div>
+<p>The output of this command will by default be converted to HTML by
implicitly making use of the <code>%html</code> magic. Additional configuration
can be achieved using the builtin <code>z.configure_mpl()</code> method. For
example, </p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="n">z</span><span class="o">.</span><span
class="n">configure_mpl</span><span class="p">(</span><span
class="n">width</span><span class="o">=</span><span class="mi">400</span><span
class="p">,</span> <span class="n">height</span><span class="o">=</span><span
class="mi">300</span><span class="p">,</span> <span class="n">fmt</span><span
class="o">=</span><span class="s">'svg'</span><span class="p">)</span>
+<span class="n">plt</span><span class="o">.</span><span
class="n">plot</span><span class="p">([</span><span class="mi">1</span><span
class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span
class="mi">3</span><span class="p">])</span>
+</code></pre></div>
+<p>Will produce a 400x300 image in SVG format, which by default are normally
600x400 and PNG respectively.
+In the future, another option called <code>angular</code> can be used to make
it possible to update a plot produced from one paragraph directly from another
+(the output will be <code>%angular</code> instead of <code>%html</code>).
However, this feature is already available in the <code>pyspark</code>
interpreter.
+More details can be found in the included "Zeppelin Tutorial: Python -
matplotlib basic" tutorial notebook. </p>
+
+<p>If Zeppelin cannot find the matplotlib backend files (which should usually
be found in <code>$ZEPPELIN_HOME/interpreter/lib/python</code>) in your
<code>PYTHONPATH</code>,
+then the backend will automatically be set to agg, and the (otherwise
deprecated) instructions below can be used for more limited inline plotting.</p>
+
+<p>If you are unable to load the inline backend, use
<code>z.show(plt)</code>:</p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="o">%</span><span class="n">python</span>
+
+<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span
class="kn">as</span> <span class="nn">plt</span>
+<span class="n">plt</span><span class="o">.</span><span
class="n">figure</span><span class="p">()</span>
+<span class="p">(</span><span class="o">..</span> <span
class="o">..</span><span class="p">)</span>
+<span class="n">z</span><span class="o">.</span><span
class="n">show</span><span class="p">(</span><span class="n">plt</span><span
class="p">)</span>
+<span class="n">plt</span><span class="o">.</span><span
class="n">close</span><span class="p">()</span>
+</code></pre></div>
+<p>The <code>z.show()</code> function can take optional parameters to adapt
graph dimensions (width and height) as well as output format (png or optionally
svg).</p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="o">%</span><span class="n">python</span>
+
+<span class="n">z</span><span class="o">.</span><span
class="n">show</span><span class="p">(</span><span class="n">plt</span><span
class="p">,</span> <span class="n">width</span><span class="o">=</span><span
class="s">'50px'</span><span class="p">)</span>
+<span class="n">z</span><span class="o">.</span><span
class="n">show</span><span class="p">(</span><span class="n">plt</span><span
class="p">,</span> <span class="n">height</span><span class="o">=</span><span
class="s">'150px'</span><span class="p">,</span> <span
class="n">fmt</span><span class="o">=</span><span
class="s">'svg'</span><span class="p">)</span>
+</code></pre></div>
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/pythonMatplotlib.png"
/></p>
+
+<h2>IPython Interpreter (<code>%python.ipython</code>) (recommended)</h2>
+
+<p>IPython is more powerful than the vanilla python interpreter with extra
functionality. You can use IPython with Python2 or Python3 which depends on
which python you set in <code>zeppelin.python</code>.</p>
+
+<p>For non-anaconda environment </p>
+
+<p><strong>Prerequisites</strong></p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">- Jupyter `pip install jupyter`
+- grpcio `pip install grpcio`
+- protobuf `pip install protobuf`
+</code></pre></div>
+<p>For anaconda environment (<code>zeppelin.python</code> points to the python
under anaconda)</p>
+
+<p><strong>Prerequisites</strong></p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">- grpcio `pip install grpcio`
+- protobuf `pip install protobuf`
+</code></pre></div>
+<p>In addition to all the basic functions of the vanilla python interpreter,
you can use all the IPython advanced features as you use it in Jupyter
Notebook.</p>
+
+<p>e.g. </p>
+
+<h3>Use IPython magic</h3>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.ipython
+
+#python help
+range?
+
+#timeit
+%timeit range(100)
+</code></pre></div>
+<h3>Use matplotlib</h3>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.ipython
+
+%matplotlib inline
+import matplotlib.pyplot as plt
+
+print("hello world")
+data=[1,2,3,4]
+plt.figure()
+plt.plot(data)
+</code></pre></div>
+<h3>Colored text output</h3>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/ipython_error.png" /></p>
+
+<h3>More types of visualization</h3>
+
+<p>e.g. IPython supports hvplot
+<img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/ipython_hvplot.png" /></p>
+
+<h3>Better code completion</h3>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/ipython_code_completion.png"
/></p>
+
+<p>By default, Zeppelin would use IPython in <code>%python</code> if IPython
prerequisites are meet, otherwise it would use vanilla Python interpreter in
<code>%python</code>.
+If you don't want to use IPython via <code>%python</code>, then you can
set <code>zeppelin.python.useIPython</code> as <code>false</code> in
interpreter setting.</p>
+
+<h2>Pandas integration</h2>
+
+<p>Apache Zeppelin <a href="../usage/display_system/basic.html#table">Table
Display System</a> provides built-in data visualization capabilities.
+Python interpreter leverages it to visualize Pandas DataFrames though similar
<code>z.show()</code> API, same as with <a
href="#matplotlib-integration">Matplotlib integration</a>.</p>
+
+<p>Example:</p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="o">%</span><span class="n">python</span>
+
+<span class="kn">import</span> <span class="nn">pandas</span> <span
class="kn">as</span> <span class="nn">pd</span>
+<span class="n">rates</span> <span class="o">=</span> <span
class="n">pd</span><span class="o">.</span><span class="n">read_csv</span><span
class="p">(</span><span class="s">"bank.csv"</span><span
class="p">,</span> <span class="n">sep</span><span class="o">=</span><span
class="s">";"</span><span class="p">)</span>
+<span class="n">z</span><span class="o">.</span><span
class="n">show</span><span class="p">(</span><span class="n">rates</span><span
class="p">)</span>
+</code></pre></div>
+<h2>SQL over Pandas DataFrames</h2>
+
+<p>There is a convenience <code>%python.sql</code> interpreter that matches
Apache Spark experience in Zeppelin and
+enables usage of SQL language to query <a
href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.html">Pandas
DataFrames</a> and
+visualization of results though built-in <a
href="../usage/display_system/basic.html#table">Table Display System</a>.</p>
+
+<p><strong>Prerequisites</strong></p>
+
+<ul>
+<li>Pandas <code>pip install pandas</code></li>
+<li>PandaSQL <code>pip install -U pandasql</code></li>
+</ul>
+
+<p>Here's one example:</p>
+
+<ul>
+<li><p>first paragraph</p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="o">%</span><span class="n">python</span>
+</code></pre></div></li>
+</ul>
+
+<p>import pandas as pd
+rates = pd.read_csv("bank.csv", sep=";")
+ ```</p>
+
+<ul>
+<li><p>next paragraph</p>
+<div class="highlight"><pre><code class="sql language-sql"
data-lang="sql"><span class="o">%</span><span class="n">python</span><span
class="p">.</span><span class="k">sql</span>
+</code></pre></div></li>
+</ul>
+
+<p>SELECT * FROM rates WHERE age < 40
+ ```</p>
+
+<h2>Using Zeppelin Dynamic Forms</h2>
+
+<p>You can leverage <a
href="/docs/0.9.0/usage/dynamic_form/intro.html">Zeppelin Dynamic Form</a>
inside your Python code.</p>
+
+<p>Example : </p>
+<div class="highlight"><pre><code class="python language-python"
data-lang="python"><span class="o">%</span><span class="n">python</span>
+
+<span class="c">### Input form</span>
+<span class="k">print</span><span class="p">(</span><span
class="n">z</span><span class="o">.</span><span class="n">input</span><span
class="p">(</span><span class="s">"f1"</span><span
class="p">,</span><span class="s">"defaultValue"</span><span
class="p">))</span>
+
+<span class="c">### Select form</span>
+<span class="k">print</span><span class="p">(</span><span
class="n">z</span><span class="o">.</span><span class="n">select</span><span
class="p">(</span><span class="s">"f2"</span><span
class="p">,[(</span><span class="s">"o1"</span><span
class="p">,</span><span class="s">"1"</span><span
class="p">),(</span><span class="s">"o2"</span><span
class="p">,</span><span class="s">"2"</span><span
class="p">)],</span><span class="s">"o1"</span><span
class="p">))</span>
+
+<span class="c">### Checkbox form</span>
+<span class="k">print</span><span class="p">(</span><span
class="s">""</span><span class="o">.</span><span
class="n">join</span><span class="p">(</span><span class="n">z</span><span
class="o">.</span><span class="n">checkbox</span><span class="p">(</span><span
class="s">"f3"</span><span class="p">,</span> <span
class="p">[(</span><span class="s">"o1"</span><span
class="p">,</span><span class="s">"1"</span><span class="p">),</span>
<span class="p">(</span><span class="s">"o2"</span><span
class="p">,</span><span class="s">"2"</span><span
class="p">)],[</span><span class="s">"o1"</span><span
class="p">])))</span>
+</code></pre></div>
+<h2>ZeppelinContext API</h2>
+
+<p>Python interpreter create a variable <code>z</code> which represent
<code>ZeppelinContext</code> for you. User can use it to do more fancy and
complex things in Zeppelin.</p>
+
+<table class="table-configuration">
+ <tr>
+ <th>API</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>z.put(key, value)</td>
+ <td>Put object <code>value</code> with identifier <code>key</code> to
distributed resource pool of Zeppelin,
+ so that it can be used by other interpreters</td>
+ </tr>
+ <tr>
+ <td>z.get(key)</td>
+ <td>Get object with identifier <code>key</code> from distributed resource
pool of Zeppelin</td>
+ </tr>
+ <tr>
+ <td>z.remove(key)</td>
+ <td>Remove object with identifier <code>key</code> from distributed
resource pool of Zeppelin</td>
+ </tr>
+ <tr>
+ <td>z.getAsDataFrame(key)</td>
+ <td>Get object with identifier <code>key</code> from distributed resource
pool of Zeppelin and converted into pandas dataframe.
+ The object in the distributed resource pool must be table type, e.g. jdbc
interpreter result.
+ </td>
+ </tr>
+ <tr>
+ <td>z.angular(name, noteId = None, paragraphId = None)</td>
+ <td>Get the angular object with identifier <code>name</code></td>
+ </tr>
+ <tr>
+ <td>z.angularBind(name, value, noteId = None, paragraphId = None)</td>
+ <td>Bind value to angular object with identifier <code>name</code></td>
+ </tr>
+ <tr>
+ <td>z.angularUnbind(name, noteId = None)</td>
+ <td>Unbind value from angular object with identifier <code>name</code></td>
+ </tr>
+ <tr>
+ <td>z.show(p)</td>
+ <td>Show python object <code>p</code> in Zeppelin, if it is pandas
dataframe, it would be displayed in Zeppelin's table format,
+ others will be converted to string</td>
+ </tr>
+ <tr>
+ <td>z.textbox(name, defaultValue="")</td>
+ <td>Create dynamic form Textbox <code>name</code> with defaultValue</td>
+ </tr>
+ <tr>
+ <td>z.select(name, options, defaultValue="")</td>
+ <td>Create dynamic form Select <code>name</code> with options and
defaultValue. options should be a list of Tuple(first element is key,
+ the second element is the displayed value) e.g.
<code>z.select("f2",[("o1","1"),("o2","2")],"o1")</code></td>
+ </tr>
+ <tr>
+ <td>z.checkbox(name, options, defaultChecked=[])</td>
+ <td>Create dynamic form Checkbox `name` with options and defaultChecked.
options should be a list of Tuple(first element is key,
+ the second element is the displayed value) e.g. <code>z.checkbox("f3",
[("o1","1"), ("o2","2")],["o1"])</code></td>
+ </tr>
+ <tr>
+ <td>z.noteTextbox(name, defaultValue="")</td>
+ <td>Create note level dynamic form Textbox</td>
+ </tr>
+ <tr>
+ <td>z.noteSelect(name, options, defaultValue="")</td>
+ <td>Create note level dynamic form Select</td>
+ </tr>
+ <tr>
+ <td>z.noteCheckbox(name, options, defaultChecked=[])</td>
+ <td>Create note level dynamic form Checkbox</td>
+ </tr>
+ <tr>
+ <td>z.run(paragraphId)</td>
+ <td>Run paragraph</td>
+ </tr>
+ <tr>
+ <td>z.run(noteId, paragraphId)</td>
+ <td>Run paragraph</td>
+ </tr>
+ <tr>
+ <td>z.runNote(noteId)</td>
+ <td>Run the whole note</td>
+ </tr>
+</table>
+
+<h2>Python environments</h2>
+
+<h3>Default</h3>
+
+<p>By default, PythonInterpreter will use python command defined in
<code>zeppelin.python</code> property to run python process.
+The interpreter can use all modules already installed (with pip,
easy_install...)</p>
+
+<h3>Conda</h3>
+
+<p><a href="http://conda.pydata.org/">Conda</a> is an package management
system and environment management system for python.
+<code>%python.conda</code> interpreter lets you change between
environments.</p>
+
+<h4>Usage</h4>
+
+<ul>
+<li><p>get the Conda Information: </p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda info
+</code></pre></div></li>
+<li><p>list the Conda environments: </p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda env list
+</code></pre></div></li>
+<li><p>create a conda enviornment: </p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda create --name [ENV NAME]
+</code></pre></div></li>
+<li><p>activate an environment (python interpreter will be restarted): </p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda activate [ENV NAME]
+</code></pre></div></li>
+<li><p>deactivate</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda deactivate
+</code></pre></div></li>
+<li><p>get installed package list inside the current environment</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda list
+</code></pre></div></li>
+<li><p>install package</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda install [PACKAGE NAME]
+</code></pre></div></li>
+<li><p>uninstall package</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.conda uninstall [PACKAGE NAME]
+</code></pre></div></li>
+</ul>
+
+<h3>Docker</h3>
+
+<p><code>%python.docker</code> interpreter allows PythonInterpreter creates
python process in a specified docker container.</p>
+
+<h4>Usage</h4>
+
+<ul>
+<li><p>activate an environment</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.docker activate [Repository]
+%python.docker activate [Repository:Tag]
+%python.docker activate [Image Id]
+</code></pre></div></li>
+<li><p>deactivate</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">%python.docker deactivate
+</code></pre></div></li>
+</ul>
+
+<p><br/>
+Here is an example</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text"># activate latest tensorflow image as a python environment
+%python.docker activate gcr.io/tensorflow/tensorflow:latest
+</code></pre></div>
+<h2>Technical description</h2>
+
+<p>For in-depth technical details on current implementation please refer to <a
href="https://github.com/apache/zeppelin/blob/master/python/README.md">python/README.md</a>.</p>
+
+<h2>Some features not yet implemented in the vanilla Python interpreter</h2>
+
+<ul>
+<li>Interrupt a paragraph execution (<code>cancel()</code> method) is
currently only supported in Linux and MacOs.
+If interpreter runs in another operating system (for instance MS Windows) ,
interrupt a paragraph will close the whole interpreter.
+A JIRA ticket (<a
href="https://issues.apache.org/jira/browse/ZEPPELIN-893">ZEPPELIN-893</a>) is
opened to implement this feature in a next release of the interpreter.</li>
+<li>Progression bar in webUI (<code>getProgress()</code> method) is currently
not implemented.</li>
+</ul>
+
+ </div>
+</div>
+
+
+ <hr>
+ <footer>
+ <!-- <p>© 2020 The Apache Software Foundation</p>-->
+ </footer>
+ </div>
+
+
+
+
+ <script type="text/javascript">
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new
Date();a=s.createElement(o),
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+ ga('require', 'linkid', 'linkid.js');
+ ga('send', 'pageview');
+
+</script>
+
+
+
+ </body>
+</html>
+
Propchange: zeppelin/site/docs/0.9.0/interpreter/python.html
------------------------------------------------------------------------------
svn:executable = *
Added: zeppelin/site/docs/0.9.0/interpreter/r.html
URL:
http://svn.apache.org/viewvc/zeppelin/site/docs/0.9.0/interpreter/r.html?rev=1884775&view=auto
==============================================================================
--- zeppelin/site/docs/0.9.0/interpreter/r.html (added)
+++ zeppelin/site/docs/0.9.0/interpreter/r.html Thu Dec 24 14:36:01 2020
@@ -0,0 +1,529 @@
+
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>Apache Zeppelin 0.9.0 Documentation: R Interpreter for Apache
Zeppelin</title>
+ <meta name="description" content="R is a free software environment for
statistical computing and graphics.">
+ <meta name="author" content="The Apache Software Foundation">
+
+ <!-- Enable responsive viewport -->
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+ <!--[if lt IE 9]>
+ <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+ <![endif]-->
+
+ <link
href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css"
rel="stylesheet">
+
+ <!-- Le styles -->
+ <link
href="/docs/0.9.0/assets/themes/zeppelin/bootstrap/css/bootstrap.css"
rel="stylesheet">
+ <link href="/docs/0.9.0/assets/themes/zeppelin/css/style.css?body=1"
rel="stylesheet" type="text/css">
+ <link href="/docs/0.9.0/assets/themes/zeppelin/css/syntax.css"
rel="stylesheet" type="text/css" media="screen" />
+ <!-- Le fav and touch icons -->
+ <!-- Update these with your own images
+ <link rel="shortcut icon" href="images/favicon.ico">
+ <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+ <link rel="apple-touch-icon" sizes="72x72"
href="images/apple-touch-icon-72x72.png">
+ <link rel="apple-touch-icon" sizes="114x114"
href="images/apple-touch-icon-114x114.png">
+ -->
+
+ <!-- Js -->
+ <script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
+ <script
src="/docs/0.9.0/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/docs.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/anchor.min.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/toc.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/lunr.min.js"></script>
+ <script src="/docs/0.9.0/assets/themes/zeppelin/js/search.js"></script>
+
+ <!-- atom & rss feed -->
+ <link href="/docs/0.9.0/atom.xml" type="application/atom+xml"
rel="alternate" title="Sitewide ATOM Feed">
+ <link href="/docs/0.9.0/rss.xml" type="application/rss+xml"
rel="alternate" title="Sitewide RSS Feed">
+ </head>
+
+ <body>
+
+ <div id="menu" class="navbar navbar-inverse navbar-fixed-top"
role="navigation">
+ <div class="container navbar-container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <div class="navbar-brand">
+ <a class="navbar-brand-main" href="http://zeppelin.apache.org">
+ <img
src="/docs/0.9.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50"
+ style="margin-top: -2px;" alt="I'm zeppelin">
+ <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span>
+ <a class="navbar-brand-version" href="/docs/0.9.0"
+ style="font-size: 15px; color: white;"> 0.9.0
+ </a>
+ </a>
+ </div>
+ </div>
+ <nav class="navbar-collapse collapse" role="navigation">
+ <ul class="nav navbar-nav">
+ <li>
+ <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick
Start <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li class="title"><span>Getting Started</span></li>
+ <li><a
href="/docs/0.9.0/quickstart/install.html">Install</a></li>
+ <li><a href="/docs/0.9.0/quickstart/explore_ui.html">Explore
UI</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/tutorial.html">Tutorial</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Run Mode</span></li>
+ <li><a
href="/docs/0.9.0/quickstart/kubernetes.html">Kubernetes</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/docker.html">Docker</a></li>
+ <li><a href="/docs/0.9.0/quickstart/yarn.html">Yarn</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.9.0/quickstart/spark_with_zeppelin.html">Spark with
Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/quickstart/python_with_zeppelin.html">Python with
Zeppelin</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Usage<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Dynamic Form</span></li>
+ <li><a href="/docs/0.9.0/usage/dynamic_form/intro.html">What
is Dynamic Form?</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Display System</span></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#text">Text Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#html">HTML Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#table">Table Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/basic.html#network">Network
Display</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/angular_backend.html">Angular Display
using Backend API</a></li>
+ <li><a
href="/docs/0.9.0/usage/display_system/angular_frontend.html">Angular Display
using Frontend API</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Interpreter</span></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/interpreter_binding_mode.html">Interpreter
Binding Mode</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/user_impersonation.html">User
Impersonation</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/dependency_management.html">Dependency
Management</a></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/installation.html">Installing
Interpreters</a></li>
+ <!--<li><a
href="/docs/0.9.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter
Loading (Experimental)</a></li>-->
+ <li><a
href="/docs/0.9.0/usage/interpreter/execution_hooks.html">Execution Hooks
(Experimental)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Other Features</span></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/publishing_paragraphs.html">Publishing
Paragraphs</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/personalized_mode.html">Personalized
Mode</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/customizing_homepage.html">Customizing
Zeppelin Homepage</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/notebook_actions.html">Notebook
Actions</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/cron_scheduler.html">Cron
Scheduler</a></li>
+ <li><a
href="/docs/0.9.0/usage/other_features/zeppelin_context.html">Zeppelin
Context</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>REST API</span></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/interpreter.html">Interpreter API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/zeppelin_server.html">Zeppelin Server
API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/notebook.html">Notebook API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/notebook_repository.html">Notebook Repository
API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/configuration.html">Configuration API</a></li>
+ <li><a
href="/docs/0.9.0/usage/rest_api/credential.html">Credential API</a></li>
+ <li><a href="/docs/0.9.0/usage/rest_api/helium.html">Helium
API</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Setup<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Basics</span></li>
+ <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/setup/basics/hadoop_integration.html">Hadoop
Integration</a></li>
+ <li><a
href="/docs/0.9.0/setup/basics/multi_user_support.html">Multi-user
Support</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Deployment</span></li>
+ <!--<li><a
href="/docs/0.9.0/setup/deployment/docker.html">Docker Image for
Zeppelin</a></li>-->
+ <li><a
href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark
Cluster Mode: Standalone</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark
Cluster Mode: YARN</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark
Cluster Mode: Mesos</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with
Flink, Spark Cluster</a></li>
+ <li><a href="/docs/0.9.0/setup/deployment/cdh.html">Zeppelin
on CDH</a></li>
+ <li><a
href="/docs/0.9.0/setup/deployment/virtual_machine.html">Zeppelin on VM:
Vagrant</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Security</span></li>
+ <li><a
href="/docs/0.9.0/setup/security/authentication_nginx.html">HTTP Basic Auth
using NGINX</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/shiro_authentication.html">Shiro
Authentication</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/notebook_authorization.html">Notebook
Authorization</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/datasource_authorization.html">Data Source
Authorization</a></li>
+ <li><a
href="/docs/0.9.0/setup/security/http_security_headers.html">HTTP Security
Headers</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Notebook Storage</span></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-s3">S3
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-azure">Azure
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-oss">OSS
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-zeppelinhub">ZeppelinHub
Storage</a></li>
+ <li><a
href="/docs/0.9.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB
Storage</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Operation</span></li>
+ <li><a
href="/docs/0.9.0/setup/operation/configuration.html">Configuration</a></li>
+ <li><a
href="/docs/0.9.0/setup/operation/proxy_setting.html">Proxy Setting</a></li>
+ <li><a
href="/docs/0.9.0/setup/operation/upgrading.html">Upgrading</a></li>
+ <li><a
href="/docs/0.9.0/setup/operation/trouble_shooting.html">Trouble
Shooting</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">Interpreter <b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu">
+ <li class="title"><span>Interpreters</span></li>
+ <li><a
href="/docs/0.9.0/usage/interpreter/overview.html">Overview</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a href="/docs/0.9.0/interpreter/spark.html">Spark</a></li>
+ <li><a href="/docs/0.9.0/interpreter/jdbc.html">JDBC</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/python.html">Python</a></li>
+ <li><a href="/docs/0.9.0/interpreter/r.html">R</a></li>
+ <li role="separator" class="divider"></li>
+ <li><a
href="/docs/0.9.0/interpreter/alluxio.html">Alluxio</a></li>
+ <li><a href="/docs/0.9.0/interpreter/beam.html">Beam</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/bigquery.html">BigQuery</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/cassandra.html">Cassandra</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/elasticsearch.html">Elasticsearch</a></li>
+ <li><a href="/docs/0.9.0/interpreter/flink.html">Flink</a></li>
+ <li><a href="/docs/0.9.0/interpreter/geode.html">Geode</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/groovy.html">Groovy</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/hazelcastjet.html">Hazelcast Jet</a></li>
+ <li><a href="/docs/0.9.0/interpreter/hbase.html">HBase</a></li>
+ <li><a href="/docs/0.9.0/interpreter/hdfs.html">HDFS</a></li>
+ <li><a href="/docs/0.9.0/interpreter/hive.html">Hive</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/ignite.html">Ignite</a></li>
+ <li><a href="/docs/0.9.0/interpreter/java.html">Java</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/jupyter.html">Jupyter</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/kotlin.html">Kotlin</a></li>
+ <li><a href="/docs/0.9.0/interpreter/kylin.html">Kylin</a></li>
+ <li><a href="/docs/0.9.0/interpreter/lens.html">Lens</a></li>
+ <li><a href="/docs/0.9.0/interpreter/livy.html">Livy</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/markdown.html">Markdown</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/mongodb.html">MongoDB</a></li>
+ <li><a href="/docs/0.9.0/interpreter/neo4j.html">Neo4j</a></li>
+ <li><a href="/docs/0.9.0/interpreter/pig.html">Pig</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/scalding.html">Scalding</a></li>
+ <li><a href="/docs/0.9.0/interpreter/scio.html">Scio</a></li>
+ <li><a href="/docs/0.9.0/interpreter/shell.html">Shell</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/sparql.html">Sparql</a></li>
+ <li><a
href="/docs/0.9.0/interpreter/submarine.html">Submarine</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="#" data-toggle="dropdown"
class="dropdown-toggle">More<b class="caret"></b></a>
+ <ul class="dropdown-menu scrollable-menu" style="right: 0; left:
auto;">
+ <li class="title"><span>Extending Zeppelin</span></li>
+ <li><a
href="/docs/0.9.0/development/writing_zeppelin_interpreter.html">Writing
Zeppelin Interpreter</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Helium (Experimental)</span></li>
+ <li><a
href="/docs/0.9.0/development/helium/overview.html">Overview</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_application.html">Writing Helium
Application</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_spell.html">Writing Helium
Spell</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_visualization_basic.html">Writing
Helium Visualization: Basics</a></li>
+ <li><a
href="/docs/0.9.0/development/helium/writing_visualization_transformation.html">Writing
Helium Visualization: Transformation</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>Contributing to Zeppelin</span></li>
+ <li><a href="/docs/0.9.0/setup/basics/how_to_build.html">How
to Build Zeppelin</a></li>
+ <li><a
href="/docs/0.9.0/development/contribution/useful_developer_tools.html">Useful
Developer Tools</a></li>
+ <li><a
href="/docs/0.9.0/development/contribution/how_to_contribute_code.html">How to
Contribute (code)</a></li>
+ <li><a
href="/docs/0.9.0/development/contribution/how_to_contribute_website.html">How
to Contribute (website)</a></li>
+ <li role="separator" class="divider"></li>
+ <li class="title"><span>External Resources</span></li>
+ <li><a target="_blank"
href="https://zeppelin.apache.org/community.html">Mailing List</a></li>
+ <li><a target="_blank"
href="https://cwiki.apache.org/confluence/display/ZEPPELIN/Zeppelin+Home">Apache
Zeppelin Wiki</a></li>
+ <li><a target="_blank"
href="http://stackoverflow.com/questions/tagged/apache-zeppelin">Stackoverflow
Questions about Zeppelin</a></li>
+ </ul>
+ </li>
+ <li>
+ <a href="/docs/0.9.0/search.html" class="nav-search-link">
+ <span class="fa fa-search nav-search-icon"></span>
+ </a>
+ </li>
+ </ul>
+ </nav><!--/.navbar-collapse -->
+ </div>
+ </div>
+
+
+
+ <div class="content">
+
+<!--<div class="hero-unit R Interpreter for Apache Zeppelin">
+ <h1></h1>
+</div>
+-->
+
+<div class="row">
+ <div class="col-md-12">
+ <!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<h1>R Interpreter for Apache Zeppelin</h1>
+
+<div id="toc"></div>
+
+<h2>Overview</h2>
+
+<p><a href="https://www.r-project.org">R</a> is a free software environment
for statistical computing and graphics.</p>
+
+<p>To run R code and visualize plots in Apache Zeppelin, you will need R on
your master node (or your dev laptop).</p>
+
+<ul>
+<li>For Centos: <code>yum install R R-devel libcurl-devel
openssl-devel</code></li>
+<li>For Ubuntu: <code>apt-get install r-base</code></li>
+</ul>
+
+<p>Validate your installation with a simple R command:</p>
+<div class="highlight"><pre><code class="text language-text"
data-lang="text">R -e "print(1+1)"
+</code></pre></div>
+<p>To enjoy plots, install additional libraries with:</p>
+
+<ul>
+<li><p>devtools with </p>
+<div class="highlight"><pre><code class="bash language-bash"
data-lang="bash">R -e <span
class="s2">"install.packages('devtools', repos =
'http://cran.us.r-project.org')"</span>
+</code></pre></div></li>
+<li><p>knitr with </p>
+<div class="highlight"><pre><code class="bash language-bash"
data-lang="bash">R -e <span class="s2">"install.packages('knitr',
repos = 'http://cran.us.r-project.org')"</span>
+</code></pre></div></li>
+<li><p>ggplot2 with</p>
+<div class="highlight"><pre><code class="bash language-bash"
data-lang="bash">R -e <span
class="s2">"install.packages('ggplot2', repos =
'http://cran.us.r-project.org')"</span>
+</code></pre></div></li>
+<li><p>Other visualization libraries: </p>
+<div class="highlight"><pre><code class="bash language-bash"
data-lang="bash">R -e <span
class="s2">"install.packages(c('devtools','mplot',
'googleVis'), repos = 'http://cran.us.r-project.org'); </span>
+<span class="s2">require(devtools);
install_github('ramnathv/rCharts')"</span>
+</code></pre></div></li>
+</ul>
+
+<p>We recommend you to also install the following optional R libraries for
happy data analytics:</p>
+
+<ul>
+<li>glmnet</li>
+<li>pROC</li>
+<li>data.table</li>
+<li>caret</li>
+<li>sqldf</li>
+<li>wordcloud</li>
+</ul>
+
+<h2>Supported Interpreters</h2>
+
+<p>Zeppelin supports R language in 3 interpreters</p>
+
+<table class="table-configuration">
+ <tr>
+ <th>Name</th>
+ <th>Class</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>%r.r</td>
+ <td>RInterpreter</td>
+ <td>Vanilla r interpreter, with least dependencies, only R environment
installed is required.
+ It is always recommended to use the fully qualified interpreter name
<code>%r.r</code>code>, because <code>%r</code> is ambiguous,
+ it could mean both <code>%spark.r</code> and <code>%r.r</code></td>
+ </tr>
+ <tr>
+ <td>%r.ir</td>
+ <td>IRInterpreter</td>
+ <td>Provide more fancy R runtime via
[IRKernel](https://github.com/IRkernel/IRkernel), almost the same experience
like using R in Jupyter. It requires more things, but is the recommended
interpreter for using R in Zeppelin.</td>
+ </tr>
+ <tr>
+ <td>%r.shiny</td>
+ <td>ShinyInterpreter</td>
+ <td>Run Shiny app in Zeppelin</td>
+ </tr>
+</table>
+
+<p>If you want to use R with Spark, it is almost the same via
<code>%spark.r</code>, <code>%spark.ir</code> & <code>%spark.shiny</code> .
You can refer Spark Interpreter docs for more details.</p>
+
+<h2>Configuration</h2>
+
+<table class="table-configuration">
+ <tr>
+ <th>Property</th>
+ <th>Default</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>zeppelin.R.cmd</td>
+ <td>R</td>
+ <td>Path of the installed R binary. You should set this property
explicitly if R is not in your <code>$PATH</code>(example: /usr/bin/R).
+ </td>
+ </tr>
+ <tr>
+ <td>zeppelin.R.knitr</td>
+ <td>true</td>
+ <td>Whether to use knitr or not. It is recommended to install
[knitr](https://yihui.org/knitr/)</td>
+ </tr>
+ <tr>
+ <td>zeppelin.R.image.width</td>
+ <td>100%</td>
+ <td>Image width of R plotting</td>
+ </tr>
+ <tr>
+ <td>zeppelin.R.shiny.iframe_width</td>
+ <td>100%</td>
+ <td>IFrame width of Shiny App</td>
+ </tr>
+ <tr>
+ <td>zeppelin.R.shiny.iframe_height</td>
+ <td>500px</td>
+ <td>IFrame height of Shiny App</td>
+ </tr>
+</table>
+
+<h2>Using the R Interpreter(<code>%r.r</code> & <code>%r.ir</code>)</h2>
+
+<p>By default, the R Interpreter appears as two Zeppelin Interpreters,
<code>%r.r</code> and <code>%r.ir</code>.</p>
+
+<p><code>%r.r</code> behaves like an ordinary REPL and use SparkR to
communicate between R process and JVM process.
+<code>%r.ir</code> use IRKernel underneath, it behaves like using IRKernel in
Jupyter notebook. </p>
+
+<p>R basic expression</p>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/r_basic.png"
width="800px"/></p>
+
+<p>R base plotting is fully supported</p>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/r_plotting.png"
width="800px"/></p>
+
+<p>Besides R base plotting, you can use other visualization library, e.g.
<code>ggplot</code> and <code>googlevis</code> </p>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/r_ggplot.png"
width="800px"/></p>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/r_googlevis.png"
width="800px"/></p>
+
+<h2>Make Shiny App in Zeppelin</h2>
+
+<p><a href="https://shiny.rstudio.com/tutorial/">Shiny</a> is an R package
that makes it easy to build interactive web applications (apps) straight from R.
+For developing one Shiny App in Zeppelin, you need to at least 3 paragraphs
(server paragraph, ui paragraph and run type paragraph)</p>
+
+<ul>
+<li>Server type R shiny paragraph</li>
+</ul>
+<div class="highlight"><pre><code class="r language-r"
data-lang="r">%r.shiny<span class="p">(</span>type<span
class="o">=</span>server<span class="p">)</span>
+
+<span class="c1"># Define server logic to summarize and view selected dataset
----</span>
+server <span class="o"><-</span> <span class="kr">function</span><span
class="p">(</span>input<span class="p">,</span> output<span class="p">)</span>
<span class="p">{</span>
+
+ <span class="c1"># Return the requested dataset ----</span>
+ datasetInput <span class="o"><-</span> reactive<span class="p">({</span>
+ <span class="kr">switch</span><span class="p">(</span>input<span
class="o">$</span>dataset<span class="p">,</span>
+ <span class="s">"rock"</span> <span class="o">=</span>
rock<span class="p">,</span>
+ <span class="s">"pressure"</span> <span class="o">=</span>
pressure<span class="p">,</span>
+ <span class="s">"cars"</span> <span class="o">=</span>
cars<span class="p">)</span>
+ <span class="p">})</span>
+
+ <span class="c1"># Generate a summary of the dataset ----</span>
+ output<span class="o">$</span>summary <span class="o"><-</span>
renderPrint<span class="p">({</span>
+ dataset <span class="o"><-</span> datasetInput<span
class="p">()</span>
+ summary<span class="p">(</span>dataset<span class="p">)</span>
+ <span class="p">})</span>
+
+ <span class="c1"># Show the first "n" observations ----</span>
+ output<span class="o">$</span>view <span class="o"><-</span>
renderTable<span class="p">({</span>
+ head<span class="p">(</span>datasetInput<span class="p">(),</span> n
<span class="o">=</span> input<span class="o">$</span>obs<span
class="p">)</span>
+ <span class="p">})</span>
+<span class="p">}</span>
+</code></pre></div>
+<ul>
+<li>UI type R shiny paragraph</li>
+</ul>
+<div class="highlight"><pre><code class="r language-r"
data-lang="r">%r.shiny<span class="p">(</span>type<span
class="o">=</span>ui<span class="p">)</span>
+
+<span class="c1"># Define UI for dataset viewer app ----</span>
+ui <span class="o"><-</span> fluidPage<span class="p">(</span>
+
+ <span class="c1"># App title ----</span>
+ titlePanel<span class="p">(</span><span class="s">"Shiny
Text"</span><span class="p">),</span>
+
+ <span class="c1"># Sidebar layout with a input and output definitions
----</span>
+ sidebarLayout<span class="p">(</span>
+
+ <span class="c1"># Sidebar panel for inputs ----</span>
+ sidebarPanel<span class="p">(</span>
+
+ <span class="c1"># Input: Selector for choosing dataset ----</span>
+ selectInput<span class="p">(</span>inputId <span class="o">=</span>
<span class="s">"dataset"</span><span class="p">,</span>
+ label <span class="o">=</span> <span class="s">"Choose a
dataset:"</span><span class="p">,</span>
+ choices <span class="o">=</span> c<span class="p">(</span><span
class="s">"rock"</span><span class="p">,</span> <span
class="s">"pressure"</span><span class="p">,</span> <span
class="s">"cars"</span><span class="p">)),</span>
+
+ <span class="c1"># Input: Numeric entry for number of obs to view
----</span>
+ numericInput<span class="p">(</span>inputId <span class="o">=</span>
<span class="s">"obs"</span><span class="p">,</span>
+ label <span class="o">=</span> <span class="s">"Number of
observations to view:"</span><span class="p">,</span>
+ value <span class="o">=</span> <span class="m">10</span><span
class="p">)</span>
+ <span class="p">),</span>
+
+ <span class="c1"># Main panel for displaying outputs ----</span>
+ mainPanel<span class="p">(</span>
+
+ <span class="c1"># Output: Verbatim text for data summary ----</span>
+ verbatimTextOutput<span class="p">(</span><span
class="s">"summary"</span><span class="p">),</span>
+
+ <span class="c1"># Output: HTML table with requested number of
observations ----</span>
+ tableOutput<span class="p">(</span><span
class="s">"view"</span><span class="p">)</span>
+
+ <span class="p">)</span>
+ <span class="p">)</span>
+<span class="p">)</span>
+</code></pre></div>
+<ul>
+<li>Run type R shiny paragraph</li>
+</ul>
+<div class="highlight"><pre><code class="r language-r"
data-lang="r">%r.shiny<span class="p">(</span>type<span
class="o">=</span>run<span class="p">)</span>
+</code></pre></div>
+<p>After executing the run type R shiny paragraph, the shiny app will be
launched and embedded as Iframe in paragraph.</p>
+
+<p><img class="img-responsive"
src="/docs/0.9.0/assets/themes/zeppelin/img/docs-img/r_shiny.png"
width="800px"/></p>
+
+<h3>Run multiple shiny app</h3>
+
+<p>If you want to run multiple shiny app, you can specify <code>app</code> in
paragraph local property to differentiate shiny app.</p>
+
+<p>e.g.</p>
+<div class="highlight"><pre><code class="r language-r"
data-lang="r">%r.shiny<span class="p">(</span>type<span
class="o">=</span>ui<span class="p">,</span> app<span
class="o">=</span>app_1<span class="p">)</span>
+</code></pre></div><div class="highlight"><pre><code class="r language-r"
data-lang="r">%r.shiny<span class="p">(</span>type<span
class="o">=</span>server<span class="p">,</span> app<span
class="o">=</span>app_1<span class="p">)</span>
+</code></pre></div><div class="highlight"><pre><code class="r language-r"
data-lang="r">%r.shiny<span class="p">(</span>type<span
class="o">=</span>run<span class="p">,</span> app<span
class="o">=</span>app_1<span class="p">)</span>
+</code></pre></div>
+ </div>
+</div>
+
+
+ <hr>
+ <footer>
+ <!-- <p>© 2020 The Apache Software Foundation</p>-->
+ </footer>
+ </div>
+
+
+
+
+ <script type="text/javascript">
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new
Date();a=s.createElement(o),
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-45176241-5', 'zeppelin.apache.org');
+ ga('require', 'linkid', 'linkid.js');
+ ga('send', 'pageview');
+
+</script>
+
+
+
+ </body>
+</html>
+
Propchange: zeppelin/site/docs/0.9.0/interpreter/r.html
------------------------------------------------------------------------------
svn:executable = *