问题标签 [mpld3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1252 浏览

python - 在 x 轴上绘制带有日期的大量数据

我有一个包含大约 100 万个条目的大型数据库。在一列中有以下形式的日期:'%Y-%m-%d %H:%M:%S。每秒有一个条目。

我可以从数据库中选择我想要绘制的时期,例如

date1 = '2015-04-22 20:28:50'

date2 = '2015-04-23 21:42:09'

以及我想在 Y 轴上绘制的另一列。正如您在具体示例中看到的那样,从 date1 到 date2 大约有 86000 个条目 - 或 - 要绘制的点。

有没有办法使用 matplotlib 有效地绘制这些数据,日期显示在 x 轴上?当然不是所有的日期都可以显示,但由于绘图周期是动态的(我将我想要的日期插入到网络表单中),有没有办法对其进行编程,以便每次都能获得最佳的情节?

到目前为止,我可以将所有日期放在一个列表中,并将所有 Y 数据放在另一个列表中。

下面是我到目前为止的代码,它绘制了数据,但 X 轴标签与我想要的相差无几。

结果是 情节

先感谢您

编辑:

我已通过添加以下行来解决此问题:

但是,现在我想使用 mpld3 插件将绘图传递给 Web 服务器:

虽然,没有插件,情节看起来很好,日期在 x 轴上,使用插件似乎无法解析这一行

进入 html 代码,因此 x 轴标签出现在 unix 时间。有谁知道这个插件有什么问题吗?

0 投票
2 回答
1055 浏览

python - mpld3 不能正确显示 x 轴上的日期

我正在使用 matplotlib 从数据库中绘制一个大型数据集,并使用 mpld3 将图形传递给浏览器。在 x 轴上有日期。这里的问题是,虽然没有 mpld3 的绘图工作完美,但当我使用它时,日期显示不正确。

这是我的代码:

完美地显示了这样的情节: 第一个图

现在,如果我只注释掉这一行:

并取消注释这两个:

该图在浏览器中显示如下: 第二个图

如您所见,唯一的问题是日期在 x 轴上的显示方式。有什么办法可以克服吗?

0 投票
0 回答
500 浏览

python - 向 mpld3 绘图添加保存工具的简单方法

mpld3非常适合快速将 matplotlib 图形转换为交互式 HTML 文件,只需要一行代码:

散景需要使用散景命令重写图形代码。但是,mpld3 除了缩放和平移之外,并没有提供非常有用和基本的工具“保存”。

有人找到添加此工具的简单方法吗?

0 投票
1 回答
715 浏览

javascript - 如何使用 mpld3 创建实时绘图

有没有办法在前端使用 mpld3 添加新数据点并删除旧数据点(推送、移位原理)?我想使用 mpld3 进行实时绘图。例如,初始化绘图并使用 websockets 更新它......到目前为止,我能想到的唯一方法是在初始化后使用底层 d3 库直接在 javascript 中更新数据,就像在这个例子中一样。

0 投票
0 回答
548 浏览

python - Jupyter notebook:使用 twinx() 时,第一个图消失了。我究竟做错了什么?

我想简单地在同一个图中绘制两个不同比例的图表。按照标准示例http://matplotlib.org/examples/api/two_scales.html,我在 jupyter notebook 上尝试了这个添加行

这行不通。我得到一个没有第一张图表的图表。这也在https://github.com/mpld3/mpld3/issues/188中被指出是一个问题,但它肯定是旧的,不是吗?有什么我可以做的吗?这可能是一个非常基本的问题,但我不明白我做错了什么,我没有找到任何解决方案!感谢您的任何评论!

0 投票
1 回答
1475 浏览

python - 在 matplotlib 中的图形上使用 plt 函数或将 plt 传递给 mpld3

许多示例定义figax使用fig, ax = plt.subplots(),然后它们直接调用图形对象上的函数。相反,其他示例直接使用 plt. 这个答案解释了一些差异,但我仍然不清楚两件事。首先,如果我不创建单独的图形对象,我如何将它传递给另一个函数。例如,当我创建一个图形对象时,我可以将它传递mpld3给创建 D3 可视化:

其次,如果我确实创建了图形对象,那么我如何调用可以在图形上的 plt 上调用的函数?例如,我希望能够运行以下代码,然后将其作为图形传递给 mpld3,如上所述。

另一个答案说 plt.subplots() 解包一个元组。我不确定它是否会解开 plt 上已有的内容。所以我尝试了:

然而,这只是给了我一个黑色的情节,这与我之前的理解一致,即plt.subplots()创造了全新的数字。

更新 根据评论,我尝试了以下方法:

虽然这成功地产生了情节,但它并没有从图中删除轴。

0 投票
1 回答
2180 浏览

python - mpld3简单示例适配

我经常使用 Python,但对 js 一无所知。

我想画一个图,左边是散点图,右边是几条曲线。

右边的每条曲线对应左边的一个点,而且只有一个点。

当我“鼠标悬停”一条线时,我希望相应的点突出显示。

那可能吗 ?

谁能给我一个我可以适应的例子?

非常感谢 !

拉斐尔

编辑 :

你是对的

但是我对mpld3一无所知(还)!

所以这里有一个例子,纯python。

看到图片了吗?当我将鼠标移到右侧的曲线上时,我希望左侧的相应点突出显示。

现在我认为问题很清楚了。很抱歉,我(还)不能提出任何代码供您更正,但我想知道如何使用 mpld3 的人可能能够为我提供一个我可以适应的模板……</p>

谢谢你们 !

0 投票
1 回答
2152 浏览

python - matplotlib 的“webagg”后端可以与我的 django 网站一起使用吗?

我在这个主题上搜索了很多,但我不是网络开发人员,所以我知道我错过了一些概念。

当我在本地运行 matplotlib 并指定“webagg”后端时,运行 plt.show() 会启动一个轻量级网络服务器并在我的浏览器中打开具有完整交互功能的绘图。

我的问题是:是否可以将 webagg 后端与我的 django 网站一起使用,为用户提供整洁的交互式 matplotlib 图形?换句话说,我可以在我的 django 网站的某个地方使用上面的代码,以便将情节嵌入到网页中吗?

(我知道 mpld3 之类的工具,它们非常酷,但没有在 matplotlib 中完全重新创建小部件/选择器功能)。

0 投票
1 回答
561 浏览

python-2.7 - 在 mpld3 中更改刻度标签颜色

我正在尝试使用 matplotlib 和 mpld3 绘制东西。这是我用来生成图表的代码:

创建了一个图表,所有的动态控件都工作了。“时间”和“值”标签以白色打印,但刻度标签以黑色打印。

如果我跳过 mpld3 并使用 plt.show() 对其进行测试,所有刻度标签都会以白色打印。当我检查 mpld3 生成的 javascript 代码时,我似乎没有检测到刻度标签的颜色设置。

如果我在 tick_params 中使用另一个参数,比如字体大小,它确实有效果。只有颜色会被忽略,这会导致标签在深蓝色背景上以黑色打印。

我该如何改变?

编辑:

在检查实际呈现的页面时,似乎有一个“填充”属性决定了颜色。

我尝试在 css 中覆盖它,但我不知道该怎么做。这似乎覆盖了我在其他地方设置的任何内容。似乎 mpld3 设置了刻度标签的颜色,但我该如何修改呢?

汉努

0 投票
1 回答
180 浏览

python - mpld3 的数据安全性

我经常绘制不想离开个人计算机的数据。我注意到mpld3在 jupyter notebook 中使用生成绘图时,访问了https://mpld3.github.io。我认为它只是拉出绘图脚本,但是在使用 mpld3 时,我的任何绘图数据是否有从我的计算机发送出去的风险?有没有我可以使用 mpld3 的“离线模式”?