Plotly-Dash – OSError: [WinError 87] Der Parameter ist falschPython

Python-Programme
Guest
 Plotly-Dash – OSError: [WinError 87] Der Parameter ist falsch

Post by Guest »

Ich habe im Internet viele ähnliche Fragen gefunden, aber keine hat genau das gleiche Problem. Ich habe auch einige dieser Lösungen ausprobiert, aber es hat nicht geklappt.
I Ich erstelle eine Plotly-Dash-App, für die ich eine virtuelle Umgebung erstellt und alle Pakete dort installiert habe.

Python ist im Verzeichnis installiert:- D:\Working_Directory

The Die App läuft manchmal reibungslos, löst aber meistens diesen Fehler aus die Zeiten-

Code: Select all

OSError: [WinError 87] The parameter is incorrect
Wenn ich plotly deinstalliere und dann neu installiere, funktioniert es einige Male einwandfrei, aber nach einiger Zeit tritt der gleiche Fehler auf.
Hier ist der Code-

Code: Select all

import plotly.express as px
import pandas as pd
from dash import Dash, dcc, html, Input, Output

# Reading excel
df = pd.read_excel('Sample - Superstore.xls')
app = Dash(__name__)

app.layout = html.Div([

# Nav-bar
html.Div([
html.H1("Superstore Sales Dashboard")
]),

# Page-content
html.Div([
# Graphs
html.Div([
html.Div(children=[
html.Div([
dcc.Graph(id='bar-chart', responsive=True, className='graph')
]),
html.Div([
dcc.Graph(id="line-chart", responsive=True, className='graph')
])
], style={'display': 'flex', 'justifyContent': 'space-between'}),
]),

# Vertical-line-separator
html.Div(className='vl'),

# Selectors
html.Div([
html.Div([
html.H2("Select Region: "),
dcc.Dropdown(df['Region'].unique(), df['Region'].unique()[0], id='region-selector')
]),

html.Hr(className='hl'),

html.Div([
html.H2("Select Category: "),
dcc.Checklist(df['Category'].unique(), df['Category'].unique(), id='category-selector',
labelStyle={'font-size': '18px'})
])
])
], className='outer-container'),
])

# Callbacks
# Callback for bar chart
@app.callback(
Output('bar-chart', 'figure'),
Input('region-selector', 'value'),
Input('category-selector', 'value')
)
def update_bar_graph(selected_region, selected_categories):
filtered_df = df[(df['Region'] == selected_region) & (df['Category'].isin(selected_categories))]
bar_chart = px.bar(filtered_df, x='Category', y='Sales', title='Sales by Category', color='Category')
return bar_chart

# Callback to update the line chart based on bar graph click and selected region and categories
@app.callback(Output('line-chart', 'figure'),
Input('bar-chart', 'clickData'),
Input('region-selector', 'value'),
Input('category-selector', 'value'))
def update_line_chart(clickData, selected_region, selected_categories):
filtered_df = df[(df['Region'] == selected_region) &  (df['Category'].isin(selected_categories))]
category = 'Overall Category'
if clickData:
category = clickData['points'][0]['x']
filtered_df = filtered_df[filtered_df['Category'] == category]
# Sort the filtered dataframe by Order Date
filtered_df = filtered_df.sort_values(by='Order Date')
line_fig = px.line(filtered_df, x='Order Date', y='Sales', color='Category', title=f'{category} Sales Over Time')
return line_fig

if __name__ == '__main__':
app.run(debug=True)
Hier ist die vollständige Fehlermeldung-

Code: Select all

Traceback (most recent call last):
File "D:\OneDrive\Desktop\Capabilities\.venv\Lib\site-packages\plotly\express\_core.py", line 942, in apply_default_cascade
args["template"] = pio.templates[args["template"]]
File "D:\OneDrive\Desktop\Capabilities\.venv\Lib\site-packages\plotly\io\_templates.py", line 74, in __geti
File "", line 1412, in _handle_fromlist
File "D:\OneDrive\Desktop\Capabilities\.venv\Lib\site-packages\_plotly_utils\importers.py", line 36, in _ _getattr__ = importlib.import_module(rel_module, parent_name)
File "D:\Working Directory\Python312\Lib\importlib\__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1322, in _find_and_load_unlocked
File "", line 1262, in _find_spec
File "", line 1525, in find_spec
File "", line 1499, in _get_spec
File "", line 1602, in find_spec
File "", line 1645, in _fill_cache
OSError: [WinError 87] The parameter is incorrect:
'D:\\OneDrive\\Desktop\\Capabilities\\.venv\\Lib\\site-packages\\plotly\\graph_objs\\layout'
Ich erhalte die gleiche Fehlermeldung häufiger, wenn ich versuche, dash-bootstrap-components (dbc) für eine andere App zu verwenden.
Das denke ich mir Das Problem liegt möglicherweise an der „importlib“-Bibliothek, aber ich weiß nicht, wie ich es lösen kann.
Es wäre großartig, wenn jemand helfen könnte. Danke :)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post