
Das Dash ist auf Plotly.
Erst anfängst? Schauen Sie sich den Dash für Julia User Guide an! Wenn Sie dort keine Dokumentation finden, lesen Sie die inoffiziellen Beispiele oder lesen Sie den Quellcode aus Demo -Anwendungen in Python und verweisen Sie dann auf den Julia -Syntaxstil.
Julia -Komponenten können zusammen mit Python- und R -Komponenten erzeugt werden. Möchten Sie sich mit dem Projekt beschäftigen? Sponsoring ist eine großartige Möglichkeit, den Fortschritt von Open -Source -Projekten wie diesen zu beschleunigen. Bitte zögern Sie nicht, uns zu erreichen!
So installieren Sie die zuletzt veröffentlichte Version:
pkg > add DashSo installieren Sie stattdessen die neueste (stabile) Entwicklungsversion:
pkg > add Dash # dev using Dash
app = dash (external_stylesheets = [ " https://codepen.io/chriddyp/pen/bWLwgP.css " ])
app . layout = html_div () do
html_h1 ( " Hello Dash " ),
html_div ( " Dash.jl: Julia interface for Dash " ),
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 = " Montréal " ),
],
layout = (title = " Dash Data Visualization " ,)
))
end
run_server (app) Gehen Sie dann in Ihrem Browser zu http://127.0.0.1:8050 , um die Dash -App anzuzeigen!
using Dash
app = dash (external_stylesheets = [ " https://codepen.io/chriddyp/pen/bWLwgP.css " ])
app . layout = html_div () do
dcc_input (id = " my-id " , value = " initial value " , type = " text " ),
html_div (id = " my-div " )
end
callback! (app, Output ( " my-div " , " children " ), Input ( " my-id " , " value " )) do input_value
" You've entered $(input_value) "
end
run_server (app)callback! Funktion.Output , Input , State oder Splats / Vektoren dieser Objekte ausgeben.(inputs..., states...) haben und einen Rückgabewert mit denselben Zahlenelementen wie die Anzahl der Output bereitstellen, die aktualisiert werden müssen. using Dash
app = dash (external_stylesheets = [ " https://codepen.io/chriddyp/pen/bWLwgP.css " ])
app . layout = html_div () do
dcc_input (id = " my-id " , value = " initial value " , type = " text " ),
html_div (id = " my-div " ),
html_div (id = " my-div2 " )
end
callback! (app,
Output ( " my-div " , " children " ),
Output ( " my-div2 " , " children " ),
Input ( " my-id " , " value " ),
State ( " my-id " , " type " )) do input_value, state_value
return ( " You've entered $(input_value) in input with type $(state_value) " ,
" You've entered $(input_value) " )
end
run_server (app) import dash
dash . html . Div
dash . dcc . Graph
dash . dash_table . DataTable using Dash
html_div
dcc_graph
dash_datatable Genau wie in Python haben Funktionen zum Deklarieren von Komponenten Keyword -Argumente, die wie in Python übereinstimmen. html_div(id = "my-id", children = "Simple text") .
Für Komponenten, die children deklarieren, sind zwei zusätzliche Unterschriften verfügbar:
(children; kwargs..) und(children_maker::Function; kwargs...) So kann man html_div("Simple text", id = "my-id") für einfache Elemente schreiben oder eine abgekürzte Syntax mit do -Syntax für komplexe Elemente auswählen:
html_div (id = " outer-div " ) do
html_h1 ( " Welcome " ),
html_div (id = " inner-div " ) do
#= inner content =#
end
end app = dash . Dash ( external_stylesheets = [ "https://codepen.io/chriddyp/pen/bWLwgP.css" ])
app . layout = html . Div ( children = [....])app = dash (external_stylesheets = [ " https://codepen.io/chriddyp/pen/bWLwgP.css " ])
app . layout = html_div () do
#= inner content =#
end @ app . callback ( Output ( 'output' , 'children' ),
Input ( 'submit-button' , 'n_clicks' )],
State ( 'state-1' , 'value' ),
State ( 'state-2' , 'value' ))
def update_output ( n_clicks , state1 , state2 ):
# logic callback! (app,
Output ( " output " , " children " ),
Input ( " submit-button " , " n_clicks " )],
State ( " state-1 " , " value " ),
State ( " state-2 " , " value " )) do n_clicks, state1, state2
# logic
endDASH -Apps übertragen Daten zwischen dem Browser (auch bekannt als Frontend) und dem Julia -Prozess, das die App (auch bekannt als das Backend) in JSON ausführt. Dash.jl verwendet JSON3.jl für JSON -Serialisierung/Deserialisierung.
Beachten Sie, dass Json3.jl konvertiert
Vector S und Tuple S zu JSON -ArraysDict und NamedTuple S zu JSON -Objekten