Javascript 如何在同一HTML页面中脱机打印所有Plotly图形?
我正在尝试使用Javascript 如何在同一HTML页面中脱机打印所有Plotly图形?,javascript,python,html,sql-server,plotly,Javascript,Python,Html,Sql Server,Plotly,我正在尝试使用jupyter notebook创建一个python脚本,该脚本从我的网站的sql server获取数据,我想在每次加载页面时使用javascript函数调用该脚本。因此,该页面将具有绘图图形。 这是我的密码: # coding: utf-8 # In[1]: #import os #os.chdir("D:/Datasets/Trell") # In[2]: import json from pandas.io.json import json_normalize
jupyter notebook
创建一个python脚本,该脚本从我的网站的sql server
获取数据,我想在每次加载页面时使用javascript函数调用该脚本。因此,该页面将具有绘图图形。
这是我的密码:
# coding: utf-8
# In[1]:
#import os
#os.chdir("D:/Datasets/Trell")
# In[2]:
import json
from pandas.io.json import json_normalize
import pandas as pd
import numpy as np
import warnings
warnings.filterwarnings('ignore')
from plotly.offline import init_notebook_mode,plot, iplot
init_notebook_mode(connected=True)
import plotly.graph_objs as go
import plotly.offline as offline
offline.init_notebook_mode()
import plotly.tools as tls
# In[3]:
# importing the requests library
import requests
# api-endpoint
URL = "https://*****.co.in/*****/*******.php"
# location given here
token= '************'
query= 'SELECT userId,createdAt,userName,trails_count,bio FROM users WHERE createdAt >= "2018-07-01"'
# defining a params dict for the parameters to be sent to the API
PARAMS = {'token':token, 'query':query}
# sending get request and saving the response as response object
r = requests.post(url = URL, data = PARAMS)
# In[4]:
data=r.json()
# In[5]:
df=pd.DataFrame(data)
# In[6]:
df.head(1)
# In[7]:
df['date'] = pd.DatetimeIndex(df.createdAt).normalize()
# In[8]:
df['user']=1
# In[9]:
df_user=df.groupby(['date'],as_index=False)['user'].agg('sum')
# In[10]:
data = [go.Scatter( x=df_user['date'], y=df_user['user'] )]
plot(data, filename='time-series.')
# In[11]:
df_user['day_of_week']=df_user['date'].dt.weekday_name
df_newuser_day=df_user.groupby(['day_of_week'],as_index=False)['user'].agg('sum')
df_newuser_day=df_newuser_day.sort_values(['user'],ascending=False)
trace = go.Bar(
x=df_newuser_day['day_of_week'],
y=df_newuser_day.user,
marker=dict(
color="blue",
#colorscale = 'Blues',
reversescale = True
),
)
layout = go.Layout(
title='Days of Week on which max. users register (July)'
)
data = [trace]
fig = go.Figure(data=data, layout=layout)
plot(fig, filename="medal.")
但问题是每次执行plot()
函数时,新的HTML
选项卡都会打开,其中包含函数中提到的filename=
我想要的是,当我执行文件时,所有的图形都在一个HTML
页面下,而且我想在每个绘图之前给标题加上
标记,这样绘图就可以理解了。因此,有没有一种方法可以做到这一点,同时在plotly
绘图之前添加一些HTMl
和CSS
标记,使它看起来像一个干净的网页,包含所有plotly
图形以及
标记下提到的标题
就像我希望所有的图表一个接一个地出现在同一页上一样
另外,我不想使用
iplot
,因为它只在同一个笔记本上打印,而不保存文件。要使打印显示在同一页上,请使用plotly offline
的iplot
方法,而不是plot
声明也是如此
plot(fig, filename="medal.")
将成为
iplot(fig)
如果希望在绘图之前添加HTML,请使用ipython提供的显示
和HTML
from IPython.core.display import display, HTML
display(HTML('<h1>Hello, world!</h1>'))
iplot(fig)
从IPython.core.display导入显示,HTML
显示(HTML(“你好,世界!”)
iplot(图)
因此,首先我们可以先插入html,然后绘制图形
要了解更多信息,请访问此以使绘图显示在同一页面中,请使用
plotly offline
的iplot
方法,而不是plot
声明也是如此
plot(fig, filename="medal.")
将成为
iplot(fig)
如果希望在绘图之前添加HTML,请使用ipython提供的显示
和HTML
from IPython.core.display import display, HTML
display(HTML('<h1>Hello, world!</h1>'))
iplot(fig)
从IPython.core.display导入显示,HTML
显示(HTML(“你好,世界!”)
iplot(图)
因此,首先我们可以先插入html,然后绘制图形
要了解更多信息,请访问此延迟回复:子地块可能是此问题的答案 例如,要创建包含2行和2列的子批次
from plotly import tools
plots = tools.make_subplots(rows=2, cols=2, print_grid=True)
延迟回复:子地块可能是这个问题的答案 例如,要创建包含2行和2列的子批次
from plotly import tools
plots = tools.make_subplots(rows=2, cols=2, print_grid=True)
但那只在笔记本里画。当我们使用
plot()时,
函数绘图显示在新选项卡中,而不是笔记本中。因此,我希望它只显示在这些选项卡上,而不是在笔记本本身中,但是的,我希望所有的图形都只在一个选项卡上一个接一个地绘制出来。有可能吗?但那只在笔记本里画。当我们使用plot()时,
函数绘图显示在新选项卡中,而不是笔记本中。因此,我希望它只显示在这些选项卡上,而不是在笔记本本身中,但是的,我希望所有的图形都只在一个选项卡上一个接一个地绘制出来。可能吗?