如何使用 CSV 输入共享 Jupyter Notebook

How to Share a Jupyter Notebook with a CSV Input

我正在根据生成的 csv 为我的公司构建热图。大量阅读后,我使用 jupyter notebooks(在线)使用 gmaps API 构建了它。我以前从未做过这样的事情,jupyter/python/gmaps 很容易满足我的要求(允许缩放、悬停在一个点上显示数据、轻松清理数据)。

现在我已经到了需要与非程序员分享我构建的东西的地步。现在用户可以点击一个按钮并生成一个 csv,然后我获取该 csv 并手动将其放入我的 jupyter notebook 文件夹中,我的代码通过 pandas 读取它并生成热图。我已经看到很多指向 github、nbviewer、Colaboratory 和其他资源的资源,但似乎找不到任何允许用户输入的内容。理想情况下,用户将能够单击该按钮并显示热图(在线或不在线)。安全也是一个问题,所以我无法制作这个项目 public。

有没有办法将 jupyter notebooks(带有 gmaps)制作成允许输入的可执行文件?或者另一种安全共享我的项目的方法,它可以自动上传 csv?我是不是从完全错误的角度看待这个问题,需要改变我的技术?

非常感谢您提前!我是这类项目的新手,感谢您的帮助:)

更多信息: Windows10个, 一般环境:visual studio 2019 C#, 当前项目:python 3

我认为我以错误的方式思考 jupyter notebook,该技术更适合 research/data 科学。我决定只做一个网站,当用户点击按钮并自动上传数据时启动。我将技术更改为 google maps javascript api,这似乎可以满足我的所有需求。我将我的数据从 csv 更改为 json,但我认为这对我来说是正确的答案。

有一个名为 Mercury 的框架可用于将 Jupyter Notebook 转换为交互式 Web 应用程序。

你描述的use-case很容易解决:

  1. 使用 YAML 配置添加原始单元格:
---
title: Upload file demo
description: Show how to upload a file in notebook with Mercury
show-code: False
params:
    filename:
        input: file
        maxFileSize: 1MB
        label: Please upload CSV file
---
  1. 上面的 YAML 将生成文件上传小部件。
  2. 可以在笔记本中通过变量 filename 访问上传的文件,变量 filename 将存储新上传文件的路径。

示例笔记本:

用Mercury生成的应用程序:

免责声明:我是 Mercury.

的作者