Bokeh como carregar um arquivo com o seu diretório?

0

Pergunta

Eu estou tentando obter o arquivo para trabalhar no bokeh. Quando utilizar o input widget, ele só me dá o nome do arquivo. Como fazer um nome de arquivo com um diretório, ao abrir o arquivo não houve erros?

csvfile = FileInput() # csvfile = ('C:/matlab0012.csv')
csvopen = myfun(csvfile) # myfun-my function that creates graphs from data from a file
bokeh input python-3.x
2021-11-23 11:07:58
2
0

Isso é impossível. Por razões de segurança, navegadores não vai fornecer o caminho completo. Eles só fornecer o nome do arquivo e o conteúdo do arquivo a partir do arquivo que foi solicitado.

Supondo que esses é um Bokeh servidor de aplicação, você só pode responder a uma seleção de arquivo com um on_change de retorno de chamada que você adicionar para o value propriedade do input widget.

Se esta é autónoma de saída (não Bokeh servidor), então você só pode responder com um JavaScript js_on_change chamada de retorno desde o Bokeh conteúdo exibido no navegador não está ligado a qualquer Python processo.

Em ambos os casos, tudo o que o browser irá fornecer-é o conteúdo do arquivo (que Bokeh lojas como base64 codificado de cadeias de caracteres value propriedade).

2021-11-23 15:48:13
0

@bigreddot é certo. você não pode obter o caminho completo. mas você pode chegar arquivo selecionado. No entanto, você tem que decodificá-lo primeiro.

exemplo mínimo :

from pybase64 import b64decode

def get_file(attr, old, new):
    file = io.BytesIO(b64decode(new))
    new_data = pd.read_csv(file)  # pandas or just use open.

file_input = FileInput(name="fileinput", accept="<.csv>")
file_input.on_change('value', get_file)
2021-11-23 15:37:20

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................