Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将我的两个python脚本合并到一个脚本中?_Python_Pandas_Plotly_Ipywidgets - Fatal编程技术网

如何将我的两个python脚本合并到一个脚本中?

如何将我的两个python脚本合并到一个脚本中?,python,pandas,plotly,ipywidgets,Python,Pandas,Plotly,Ipywidgets,我想用python srcipt创建一个web界面,以便从许多CSV生成不同的图形 为此,我使用熊猫、绘声绘色的avec ipywidgets作为图书馆和Jupyter笔记本 我的第一个脚本允许根据服务器和下拉列表中选择的日期显示CSV: from ipywidgets import interact, Dropdown from ipywidgets import widgets from IPython.display import display import plotly.express

我想用python srcipt创建一个web界面,以便从许多CSV生成不同的图形

为此,我使用熊猫、绘声绘色的avec ipywidgets作为图书馆和Jupyter笔记本

我的第一个脚本允许根据服务器和下拉列表中选择的日期显示CSV:

from ipywidgets import interact, Dropdown
from ipywidgets import widgets
from IPython.display import display
import plotly.express as px
import pandas as pd
from ipywidgets.embed import embed_minimal_html
import sys
import os

###################### Déclarations des widgets ######################

button = widgets.ToggleButton(description='click me')
out = widgets.Output(layout=widgets.Layout(border = '1px solid black'))

Server = os.listdir('/home/tim/Bureau/Servers/')
ServerList = widgets.Dropdown(options = (Server))

Date = ['2019-10', '2019-11', '2019-12', '2020-01']
DateList = widgets.Dropdown(options = (Date))


@interact(ServersList = Server, DatesList = Date)
def print_all(ServersList, DatesList):
    Test = os.listdir('/home/tim/Bureau/Servers'+ '/'+ ServersList+ '/'+ DatesList+'/')
    Path = os.path.join('/home/tim/Bureau/Servers'+ '/'+ ServersList+ '/'+ DatesList+'/' + str(Test).strip("[]").strip("''"))
    display(Path)

    df = pd.read_csv(Path)
    df.head()


    fig = px.line(df, x = 'Date', y = 'Total', title='DF command graph')
    fig.add_scatter(mode='markers+lines')

    display(df)
此脚本工作正常,输出为:

我的第二个脚本允许显示CSV,并根据下拉列表中的FS选项跟踪图形。剧本是:

import ipywidgets as widgets
from ipywidgets import interactive
import pandas as pd
import plotly.graph_objects as go
import plotly.express as px

df = pd.read_csv('/home/tim/Bureau/Servers/Server1/2019-10/Test1.txt')


items = ['All']+sorted(df['FS'].unique().tolist())


def view(x=''):
    if x=='All': display(df)
    display(df[df['FS']==x])

    fig = px.line(df[df['FS']==x], x = 'Date', y ='Total', title='DF command graph')
    #fig.add_scatter(x=df['Date'], y=df['Used'])
    fig.update_traces(mode='markers+lines')
    fig.show();

w = widgets.Dropdown(options=items)
interactive(view, x=w)
这个脚本也非常好用。结果是:

所以我的问题是:如何合并我的两个脚本,让三个下拉列表同时出现,以便选择服务器、日期和所需的FS


谢谢

如果您对
dash
满意,那么找出这些回调就不会太复杂。如果您对
dash
满意,找出这些回调就不会太复杂。