本文最后更新于
2026-01-02,某些文章具有时效性,若有错误或已失效,请在下方
留言或联系
老夜。
Origin实用插件之散点密度热图(Density Filter)
在统计样点在二维空间中的分布情况时常常会使用到散点密度热图,我们知道在 R 语言中有专用的绘图函数 smoothScatter ()可以实现,在 MATLAB 中也有可以用 plotScat.m 的内嵌函数,在 Python 中可以使用 pandas和MatPlotLib 中的相应功能,那么在 Origin 中如何绘制散点密度图呢?
本期要介绍的插件是 OriginLab 官方技术支持团队提供的”Density Filter“插件,这个插件用于通过二维散点图数据绘制密度热图。类似的插件有 Kernel Density Plot 用于极坐标系下的散点数据转密度热图,Gaussian Mixture Models 可以通过高斯混合模型计算二维热力图,这三个插件功能和操作类似,本期以 Density Filter 为例,插件支持的最低 Origin 版本为 Origin2019(9.6)。
https://www.originlab.com/fileExchange/details.aspx?fid=464
https://pan.baidu.com/s/1IYvXdABRu_w8E1bdSiE1pw
Origin 插件下载完成后是后缀为”.opx”的文件,只需先打开 Origin 软件然后将”.opx”文件拖曳进 Origin 面板内即可完成安装,安装过程不会有提示出现,在面板右侧 Apps 窗口中如果有了相应的插件图标(图标灰色并非不可用)即说明安装成功。
首先我们要准备一组散点数据,这里我使用 Origin 内嵌的 Python 环境和 Code Builder 工具生成了一组沿直线分布的随机点,并将 Python 中的数据加载进 Origin 的工作表:
在 Origin 的 Command Window 运行编辑好的成程序即可在工作区生成一个新的名为“MyData”的表单,在第一页载入了散点数据。(PS:如果大家感兴趣可以出一期 Origin+Python 环境搭建的教程)
用上期介绍过的 Graph Maker 工具可以快速预览散点分布的情况,如下:
现在选中两列数据,运行 Density Filter 插件,其中 Input 为原始数据,在 Rows 中可以选择数据范围,Setting 可以设置密度计算方式,第二个参数用于设定输出热图的分辨率(参数设置过大会导致处理时间较长),Grid Range 用于设置热图的空间范围。
设置完成后点击 OK 即可生成,效果如下,同时生成的一个工作表内部存放了计算得到的二维密度分布数据:
可以在设置对话框修改配色,如果需要使用自定义配色可以参考 Color Editor 插件的教程生成并保存自定义 Palette,当然也可以通过 Tool->Palette Editor 生成和保存新的配色。
绘制散点数据的密度热图如要在原生的 Origin 环境中较难实现,通过 Density Filter 插件可以方便的生成,但是这个插件也存在算法单一的问题,如果需要调整热图的计算算法可以尝试 Gaussian Mixture Models,该插件有着更灵活的应用范围和更丰富的计算方式。
更多科研作图、软件使用、表征分析、SCI 写作、名师介绍等干货知识请进入后台自主查询。
科研绘图交流群,请添加微信:17857127498
写作/表征交流群,请添加微信:xueshan199