Solución:
Que yo sepa, actualmente no existe una forma sencilla de hacer esto.
Encuentre a continuación una solución alternativa que es similar a configurar Tensorboard (https://www.dlology.com/blog/quick-guide-to-run-tensorboard-in-google-colab/).
Comience con una celda de código que configure todo lo necesario para esta solución alternativa:
# How to run a Dash app in Google Colab
## Requirements
### Install ngrok
!wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
!unzip ngrok-stable-linux-amd64.zip
### Run ngrok to tunnel Dash app port 8050 to the outside world.
### This command runs in the background.
get_ipython().system_raw('./ngrok http 8050 &')
### Get the public URL where you can access the Dash app. Copy this URL.
! curl -s http://localhost:4040/api/tunnels | python3 -c
"import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"
### Install Dash
!pip install dash==0.31.1 # The core dash backend
!pip install dash-html-components==0.13.2 # HTML components
!pip install dash-core-components==0.39.0 # Supercharged components
!pip install dash-table==3.1.7 # Interactive DataTable component (new!)
Agregue otra celda de código con su aplicación Dash:
## Dash app (https://dash.plot.ly/getting-started)
### Save file with Dash app on the Google Colab machine
%%writefile my_app1.py
import dash
import dash_core_components as dcc
import dash_html_components as html
external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
app.layout = html.Div(children=[
html.H1(children='Hello Dash'),
html.Div(children='''
Dash: A web application framework for Python.
'''),
dcc.Graph(
id='example-graph',
figure={
'data': [
{'x': [1, 2, 3], 'y': [4, 1, 2], 'type': 'bar', 'name': 'SF'},
{'x': [1, 2, 3], 'y': [2, 4, 5], 'type': 'bar', 'name': u'Montréal'},
],
'layout': {
'title': 'Dash Data Visualization'
}
}
)
])
if __name__ == '__main__':
app.run_server(debug=True)
En una última celda de código, puede iniciar su aplicación Dash (esta celda estará ocupada hasta que detenga la ejecución y, por lo tanto, detenga su aplicación Dash).
### Run Dash app
!python my_app1.py
Para acceder a la aplicación Dash, copie y pegue el ngrok.io-URL arriba a una nueva pestaña del navegador (NO 127.0.0.1:8050) y espere unos segundos.
JupyterDash (la biblioteca oficial para ejecutar Dash en portátiles) ahora tiene soporte para ejecutar aplicaciones en Colab.
Puede pegar este código dentro de un cuaderno de Colab y su aplicación se mostrará en línea:
!pip install jupyter-dash
import plotly.express as px
from jupyter_dash import JupyterDash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
# Load Data
df = px.data.tips()
# Build App
app = JupyterDash(__name__)
app.layout = html.Div([
html.H1("JupyterDash Demo"),
dcc.Graph(id='graph'),
html.Label([
"colorscale",
dcc.Dropdown(
id='colorscale-dropdown', clearable=False,
value="plasma", options=[
{'label': c, 'value': c}
for c in px.colors.named_colorscales()
])
]),
])
# Define callback to update graph
@app.callback(
Output('graph', 'figure'),
[Input("colorscale-dropdown", "value")]
)
def update_figure(colorscale):
return px.scatter(
df, x="total_bill", y="tip", color="size",
color_continuous_scale=colorscale,
render_mode="webgl", title="Tips"
)
# Run app and display result inline in the notebook
app.run_server(mode="inline")
Aquí hay un GIF de cómo se ve la salida. También puede consultar este cuaderno de Colab.
Aquí hay algunos enlaces más útiles:
- v0.3.0 Nota de la versión
- Anuncio de JupyterDash
- Repositorio oficial
- Aplicaciones de demostración que utilizan los transformadores de Hugging Face en Colab