【问题标题】:Size parameter in plotly heatmap绘图热图中的大小参数
【发布时间】:2017-03-09 16:10:35
【问题描述】:

在等高线图中,我可以提供尺寸参数 (https://plot.ly/python/reference/#contour-contours-size) 来指定每个等高线级别之间的步长。热图中是否有任何等价物?

我有一个等高线图,用户可以指定范围和 bin 大小。默认范围是数据的范围,并且通过将该范围划分为 12 个 bin 来计算 bin 大小。所以对于这个示例图,范围是 353.1 到 360.7,我们的 bin 大小为 0.6,我得到的等高线图如下所示:

现在,如果用户输入的范围为 350 到 370,bin 大小为 1,我们将有 20 个 bin,等高线图如下所示:

下面是我使用默认值获得的相同数据的热图:

这是当我输入 350 到 370 的范围和 1 的 bin 大小时得到的结果:

我正在寻找的是一种使堆图在范围和 bin 大小方面表现得像等高线图的方法。

【问题讨论】:

  • 你能添加一个你想要实现的示例图像吗?您想要色阶中的步骤吗?
  • 我更新了问题并添加了示例图片和我的用例说明。

标签: plotly


【解决方案1】:

您可以通过设置热图的zminzmax 并添加自定义颜色范围来实现所需的行为。

您可以使用rel_minrel_max 来指定用于颜色范围的值的上限和下限以及bins 的数量

注意:火山数据图的数据取自here

var bin = 10;
var rel_min = 100;
var rel_max = 250;

var colorscale = [];
var color = Plotly.d3.scale.linear()
  .domain([0, 0.5, 1])
  .range(["blue", "green", "red"]);

for (var i = 0; i < bin; i += 1) {
  colorscale.push([i / bin, color(i / bin)]);
  colorscale.push([(i + 1) / bin, color(i / bin)] );
}

Plotly.newPlot('myDiv', [{
  z: heatmap,
  zmin: rel_min,
  zmax: rel_max,
  type: 'heatmap',
  colorscale: colorscale
}])
<script src="https://cdn.plot.ly/plotly-latest.min.js">
</script>
<script src="https://mbostock.github.io/protovis/ex/heatmap.js"></script>
<div id="myDiv"></div>

【讨论】:

  • 抱歉耽搁了,我刚开始尝试这个——效果很好!非常感谢!
猜你喜欢
  • 1970-01-01
  • 2016-12-08
  • 1970-01-01
  • 1970-01-01
  • 2020-10-13
  • 1970-01-01
  • 2022-01-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多