我希望在同一画布内有一个多线图,与相同的 x 轴相连,如图所示:
使用子图并不能达到预期的目的。
import plotly.express as px
from plotly.subplots import make_subplots
import plotly.graph_objects as go
fig = make_subplots(rows=2, shared_xaxes=True,vertical_spacing=0.1)
fig.add_scatter(y=[2, 1, 3], row=1, col=1)
fig.add_scatter(y=[1, 3, 2], row=2, col=1)
fig.show()
Run Code Online (Sandbox Code Playgroud)
我可以知道如何做到这一点吗?如果有人能指出好的阅读材料,我将不胜感激
在注意到目前这个问题没有答案后,我想知道是否有人知道如何:
这是我的 Plotly 脚本:
from plotly import tools
import plotly.plotly as py
import plotly.graph_objs as go
import plotly
nom_plot=[]
trace1 = go.Scatter(x=[1, 2, 3], y=[4, 5, 6],name='1',showlegend=True)
nom_plot.append('GRAPH 1')
trace2 = go.Scatter(x=[20, 30, 40], y=[50, 60, 70],name='2',yaxis='y2')
nom_plot.append('GRAPH 2')
trace3 = go.Scatter(x=[300, 400, 500], y=[600, 700, 800],showlegend=False)
nom_plot.append('GRAPH 3')
trace4 = go.Scatter(x=[4000, 5000, 6000], y=[7000, 8000, 9000])
nom_plot.append('GRAPH 4')
trace5 = go.Scatter(x=[20, 30, 40], y=[50, 60, 70])
nom_plot.append('GRAPH 5')
print(trace1)
fig = tools.make_subplots(rows=4, cols=2, subplot_titles=(nom_plot))
fig.append_trace(trace1, 1, 1) …Run Code Online (Sandbox Code Playgroud) 我真的很擅长在python中导入包.我的计算机上有python 3.6.4,我正在尝试安装dash包,dash_core_components.
我试着输入anaconda提示符:conda install dash,(不适用于当前频道)我也尝试安装pip throw conda:Conda install pip 然后 pip install dash ...但也有错误.
我真的很新,说实话,我真的不知道我在做什么.当我打开它时说我从spyder弹出一个弹出窗口说不要使用pip,它可以破坏东西.我不明白为什么...
我该怎么办破折号?一步步
非常感谢
是否可以plt.show()在 plotly 的 Dash 框架中显示一个简单的 matplotlib 图(通常由 生成的那种)?或者只是带有 plotly 的散点和数据轨迹的类似情节的图形?
具体来说,我想我需要一个与Graph(见下文)不同的组件以及一种在update_figure函数中返回简单图的方法。
例子:
import dash
import dash_core_components as dcc
import dash_html_components as html
import numpy as np
import matplotlib.pyplot as plt
app = dash.Dash()
app.layout = html.Div(children=[
html.H1(children='Hello Dash'),
dcc.Slider(
id='n_points',
min=10,
max=100,
step=1,
value=50,
),
dcc.Graph(id='example') # or something other than Graph?...
])
@app.callback(
dash.dependencies.Output('example', 'figure'),
[dash.dependencies.Input('n_points', 'value')]
)
def update_figure(n_points):
#create some matplotlib graph
x = np.random.rand(n_points)
y = np.random.rand(n_points)
plt.scatter(x, y)
# …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Inputs在Web上创建破折号表。但是问题在于,数据是通过回调和先验从数据库创建的,除非使用回调函数创建了pandas dataframe,否则我不知道列的名称。我已经检查过我获得了正确的数据。但是无法显示它。我使用了多个输出选项(使用Dash 0.41)
我的代码如下所示:(我未提供在回调someFunc中生成熊猫数据帧的函数的详细信息,因为对于Dash代码TroubleShooting而言,这并不重要。
import dash_table as dt
def someFunc(ID, pattern_desc, file_path):
## do something
return df # pandas dataframe
Run Code Online (Sandbox Code Playgroud)
#
external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
server = app.server
app = dash.Dash(__name__)
app.config.suppress_callback_exceptions = True
app.css.config.serve_locally = True
app.scripts.config.serve_locally = True
app.layout = html.Div(
children = [
html.Div(
id = 'title',
children = appTitle,
className = 'titleDiv'
),
html.Div(
children = [
html.Div(
children = "Enter ID:",
className = 'textDiv'
),
dcc.Input(
id = 'ID',
type …Run Code Online (Sandbox Code Playgroud) Dash 中 (空格)的 HTML 等价物是什么?
html.Div(
[
dcc.Input(),
<add horizontal space here>
dcc.Input()
]
)
Run Code Online (Sandbox Code Playgroud) 我想垂直对齐 a 的所有选项dash_core_components.RadioItems。
根据dash 文档,默认行为应包括选项的垂直对齐RadioItems。如果您想水平对齐选项,则必须指定:
labelStyle={'display': 'inline-block'}
Run Code Online (Sandbox Code Playgroud)
相反,作为默认行为,我得到水平对齐,但我不知道要指定什么作为项目display来获得选项的垂直对齐RadioItems。
这是我到目前为止的尝试:
import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
app = dash.Dash()
app.layout = html.Div([dcc.RadioItems(id = 'input-radio-button',
options = [dict(label = 'A', value = 'A'),
dict(label = 'B', value = 'B')],
value = 'A'),
html.P(id = 'output-text')])
@app.callback(Output('output-text', 'children'),
[Input('input-radio-button', 'value')])
def update_graph(value):
return f'The selected value is {value}'
if __name__ == "__main__":
app.run_server()
Run Code Online (Sandbox Code Playgroud)
我得到什么: …
我正在尝试消除烛台中的日期时间间隙(间隙是股市休市的时间段,因此没有数据)。似乎无法找到使用绘图对象的良好解决方案。有没有可行的办法呢?
我的代码如下(使用绘图对象):
import dash
import dash_core_components as dcc
import dash_table
import pandas as pd
import dash_html_components as html
import numpy as np
from dash.dependencies import Output, Input, State
import plotly.graph_objects as go
import yfinance as yf
import plotly.express as px
from datetime import datetime, timedelta
from pytz import timezone
import dash_bootstrap_components as dbc
df= yf.Ticker('aapl')
df = df.history(interval="5m",period="5d")
df["Datetime"] = df.index
trace1 = {
'x': df.Datetime,
'open': df.Open,
'close': df.Close,
'high': df.High,
'low': df.Low,
'type': 'candlestick',
'name': 'apple,
'showlegend': False …Run Code Online (Sandbox Code Playgroud) python candlestick-chart python-datetime yahoo-finance plotly-dash
如何在Python中的ploty dash中将html.H1中的文本居中?
app = dash.Dash(__name__)
app.layout = html.Div([
html.H1('Hello Dash', style={'color': 'red', 'fontSize': 40})
])
Run Code Online (Sandbox Code Playgroud)
我想将“Hello Dash”放在页面中间。我怎样才能做到这一点?
plotly-dash ×10
python ×10
plotly ×5
css ×2
html ×2
conda ×1
install ×1
matplotlib ×1
pandas ×1
python-2.7 ×1