问题标签 [plotly-python]
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.
heatmap - 我可以在 Python 的 Plotly 热图中指定单元格的宽度和高度吗?
问题陈述
我试图用来plotly.graph_objects.Heatmap
显示 (x, y, z) 值的数据集,其中 x 和 y 不在固定的矩形网格上。x 值在单个网格上等距分布,并且在每个 x 值处都有一个等距 y 网格。从一个 x 值到下一个 x 值,y 网格是任意不同的(开始、停止、数量,都可能不同)。所需的行为是一组以每个数据点为中心的连续矩形,其宽度由图上 x 的间距和每列中 y 的间距确定。
matplotlib
这是's 的样子imshow
:
的行为Heatmap
可以很容易地使用每个单元格的中心指定这种类型的绘图,但我错过了如何控制列的宽度。而不是我想要的宽度,所有的宽度都是 1。
第二个问题是我尝试这样做的方式(见下文)相当缓慢。
我试过的
为了制作上面的第二个图,我正在循环 x 值。对于每个值,我构建了一个重复 x 的数组,以匹配该列的 y 和 z 数组的长度,add_trace
这就是我的数字。这对我的情况来说是一种方便的构造,因为它确保 y 网格的间距适合每一列。但由于每条迹线中的参数都有一个重复值x
,因此宽度设置为 1。正如我上面所说,这也很慢。
我查看了 https://plot.ly/python/heatmaps 上的示例并阅读了https://plot.ly/python/reference/#heatmap上的文档。
我试图理解 x 值的替代x0
和dx
构造,但是关于这方面的文档对我来说并不清楚,经过一些实验后,我继续前进。
我还尝试使用该xgap
参数来缩小单元格宽度的外观,但由于这是以像素为单位的,它会破坏绘图的缩放行为。它也不会改变悬停工具所尊重的区域,这会破坏悬停行为。
最后,我还尝试构建一个包含pandas.DataFrame
所有 (x, y, z) 值以及我想要的悬停文本的单个。这更快,但看起来它试图使 y 轴与图中所有不同的 y 网格相称,从而导致看起来稀疏的非常细长的矩形数组。
最小的例子
理想情况下,我想找到一种快速且外观自然的方法来生成以下内容,其中 x 边界恰好落在 -0.25、0.25 和 0.75 处。
有什么我可以轻松(或不那么容易)添加到上述结构中以将单元格宽度设置为 0.5 的东西吗?如果没有,我应该使用完全不同的结构吗?
python-3.x - 如何修复 plotly trace1 = go.Scatter() 未在 python 上按需要绘制
我正在尝试用 plotly 绘制 Scatter。我可以使用这个命令完美地做到这一点:
但是当我使用以下命令时:
输出图表很奇怪!
我正在使用允许更灵活地更改布局的代码进行绘图。我需要定制图表。
输出很奇怪!
但是如果我运行这个命令:
我得到漂亮的想要的图表。
我想在下面运行这些代码,因为它们为我的图表布局提供了更好的选择:
onclick - plotly_click 不会触发
按照此示例https://community.plot.ly/t/hyperlink-to-markers-on-map/17858/6,我试图使我的散点图可点击(具体来说,点击时打开网页)。单击数据点时如何触发单击事件?
这是一个 python turbogears 应用程序,plotly_click
事件发生在js
. 我正在使用plotly.js v1.44.1.
. 就像在示例中一样,我首先创建fig
:
然后我div
在图中找到了一个:
然后我构建一个js callback
要插入到script
模板中的标签中,如示例中所示。这是注入到 html 中的脚本标记:
console.log
渲染页面时,事件侦听器之前的前两个语句会打印出来,这意味着js
成功注入html
. 特别是,plot_element
是一个带有class="plotly-graph-div js-plotly-plot"
. 但是,单击散点图上的点不会产生任何结果,不会产生任何错误、事件或控制台日志语句。我至少期望控制台日志语句if
会发生。我选择了错误的 div id 吗?
python - 错误栏信息未在 Scatter3d 悬停中显示
我有一个使用 z_axis 不对称误差线的 3d 图,但是当我将鼠标悬停在数据点上时,我只得到(x,y,z)
信息而不是(x,y,z +err/-err)
.
错误栏的 Plotly 文档表明此信息应自动包含在悬停标签中。我尝试使用该hovertext
属性(hoverinfo='text'
根据Scatter3d 文档设置)但没有成功。也许我重新格式化标签的尝试不是情节需要的格式,但我现在尝试了几种不同的方法都无济于事。下面是尝试使用hovertext
andhoverinfo
属性的代码。
python - 带有任意列的 Plotly Express 悬停模式
我看到hovermode
in 中的属性layout
具有x
or选项y
,但是是否可以使用任意数据框列?反而?
例如,我正在绘制精确召回曲线。x 轴是召回率,y 轴是精度。自变量是一个检测阈值(范围为np.linspace(0,1.0,101)
),在我的数据框中有一列称为threshold
。当我将鼠标悬停在精确召回点上时,我感兴趣的是其他曲线上具有相同检测阈值的点。那么我可以将鼠标悬停在此列上吗?
python - Plotly Python 中的刻度格式
我正在尝试将我的 Plotly 条形图 x 轴格式化为带 3 个小数点的百分比。
我可以使用 让 y 轴显示为四舍五入的百分比tickformat = '%'
,但我无法显示更多小数。Plotly d3 文档不清楚(对我来说)如何做到这一点。任何帮助表示赞赏。
提前致谢。