1.算法功能简介

热力图,也就热图或者热点图,它能以特殊高亮的的形式显示某一区域的等级的优越性、重要性或者某一区域类别的密度和变换趋势;例如百度地图热力图 是用不同颜色的区块叠加在地图上实时描述人群分布、密度和变化趋势的一个产品,是基于百度大数据的一个便民出行服务。

上图主要显示一个城市的某个地方人员比较集中甚至拥挤程度,颜色越深表示人员越多,颜色浅代表人比较少,可以提前考虑自己的行程避开人多的地方。

PIE支持算法功能的执行,下面对热力图算法功能进行介绍。

2.算法功能实现说明

2.1. 实现步骤

第一步

算法参数设置

第二步

算法执行

第三步

结果显示

2.2. 算法参数

C#算法DLL

PIE.CommonAlgo.dll

C#算法名称

PIE.CommonAlgo.HotMapContructAlgo

参数结构体

HotMapContruct_Exchange_Info

参数说明

BCreateFeatureDataset

bool

是否创建矢量数据集

BUseWeightFiled

bool

是否使用权重字段

CellSize

double

像元大小(影响输出宽高 为负数不参与计算)

DefualtWeightValue

int

默认权重值(0-255,不使用权重字段情况下)

DeviceHeight

int

输出影像高度

DeviceWidth

int

输出影像宽度(高度自动计算)

InputFeatureDataset

IFeatureDataset

输入矢量数据集

ListInvalidValue

IList<double>

无效值列表

OutputFeatureDataset

IFeatureDataset

输出矢量数据集(内存)

OutputRasterDataset

IRasterDataset

输出栅格数据集

OutRasterFilePath

string

输出栅格路径

OutRasterType

string

输出栅格类型

Radius

double

半径(像素单位)

WeightFeildName

String

权重字段名称

2.3. 示例代码

数据路径

百度云盘地址下/PIE示例数据/矢量数据/Shape/省会城市.shp

视频路径

百度云盘地址下/10.算法调用/实用工具/热力图算法.avi

示例代码

         /// <summary>
/// 热力图生成算法
/// </summary>
private void Test_HotMapContructAlgo()
{
#region 1参数设置
string strFileName = @"D:\\data\\China\\省会城市.shp";
IFeatureDataset fDataset = PIE.DataSource.DatasetFactory.OpenFeatureDataset(strFileName);
if (fDataset.GetGeomType() != GeometryType.GeometryPoint) return;
HotMapContruct_Exchange_Info info = new HotMapContruct_Exchange_Info();
info.InputFeatureDataset = fDataset;
//具体分析
info.BUseWeightFiled = true;
info.WeightFeildName = "GDP";//根据数据的权重字段进行设置
info.Radius = ;
info.BCreateFeatureDataset = false;
info.DeviceWidth = ;
info.DefualtWeightValue = ;
info.OutRasterType = "GTIFF";
info.DeviceWidth = ;
info.CellSize = fDataset.GetExtent().GetWidth() / info.CellSize;
info.OutRasterFilePath = @"D:\\temp\\省会城市热力图测试.tiff";
#endregion //2、算法执行
PIE.CommonAlgo.HotMapContructAlgo alog = new HotMapContructAlgo();
alog.Params = info;
alog.Execute(); //3、结果显示
ILayer layer = LayerFactory.CreateDefaultLayer(info.OutRasterFilePath);
if (layer == null)
{
MessageBox.Show("执行失败");
return;
}
m_HookHelper.FocusMap.AddLayer(layer); m_HookHelper.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
(fDataset as IDisposable).Dispose();//释放内存
fDataset = null;
}

2.4. 示例截图

PIE SDK热力图的更多相关文章

  1. PIE SDK 文章目录索引

    1.PIE SDK介绍 1.1.  PIE软件介绍 1.2.  PIE SDK介绍 1.3.  PIE支持项目介绍 1.4.  PIE.NET-SDK插件式二次开发介绍 1.5.  PIE.NET-S ...

  2. PIE SDK Command&&Tool工具命令一览表

    PIE SDK Command&&Tool工具命令一览表 编号 模板 名称(中文) Command&Tool 程序集 备注 1 数据管理 加载栅格数据 PIE.Controls ...

  3. PIE SDK 距离分类和最大似然分类

       1.算法功能简介 监督分类,也叫训练场地法.训练分类法,是遥感图像分类的一种,用被确认类别的样本像元去识别其他未知类别像元的过程.监督分类算法有平行算法.平行六面体法.最小距离法.最大似然法.马 ...

  4. PIE SDK与OpenCV结合说明文档

    1.功能简介 OpenCV是基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS操作系统上.它轻量级而且高效——由一系列 C 函数和少量 ...

  5. PIE SDK影像坏线修复

    1.算法功能简介 坏条带的由来:2003年5月31日,Landsat-7ETM+机载扫描行校正器(SLC) 故障,导致此后获取的影像出现了数据条带丢失,严重影响了Landsat ETM遥感影像的使用. ...

  6. PIE SDK与GeoServer结合说明文档

    1.  GeoServer简介 GeoServer是OpenGIS Web服务器规范的J2EE实现的社区开源项目,利用GeoServer可以方便的发布地图数据,允许用户对特征数据进行更新.删除.插入操 ...

  7. PIE SDK组件式开发综合运用示例

    1. 功能概述 关于PIE SDK的功能开发,在我们的博客上已经分门别类的进行了展示,点击PIESat博客就可以访问,为了初学者入门,本章节将对从PIE SDK组件式二次开发如何搭建界面.如何综合开发 ...

  8. PIE SDK地图范围设置

    1.功能简介 地图范围设置主要就是对图层的地图浏览控制,例如地图的放大.缩小.漫游.全图显示.1:1视图.比例尺等功能,能更好的与地图有一个互动的地图浏览体验.PIE SDK对地图范围设置主要利用IC ...

  9. PIE SDK屏幕坐标和地图坐标转换

    1. 功能简介 屏幕坐标和地图坐标转换,就是字面意思,将电脑屏幕的坐标转换为带有空间信息的地图坐标,主要运用PIE SDK地图控件的ToMapPoint()方法,而地图坐标转换为设备坐标(屏幕),用的 ...

随机推荐

  1. 设计模式09: Decorator 装饰模式(结构型模式)

    Decorator 装饰模式(结构型模式) 子类复子类,子类何其多加入我们需要为游戏中开发一种坦克,除了不同型号的坦克外,我们还希望在不同场合中为其增加以下一种多种功能:比如红外线夜视功能,比如水路两 ...

  2. 【leetcode】Move Zeroes

    Move Zeroes 题目: Given an array nums, write a function to move all 0‘s to the end of it while maintai ...

  3. 挂载ISO 和 KILL 掉占用进程

    mount -t iso9660 -o loop,user VMware-tools-linux-8.6.0-425873.iso /mnt/cdrom fuser -m -v -i -k  /mnt ...

  4. Android使用Canvas画图

    1.参考:http://blog.csdn.net/rhljiayou/article/details/7212620/ 2.常用方法: 1.Canvas类 drawArc 绘制弧 drawBitma ...

  5. WCF分布式开发步步为赢(1):WCF分布式框架基础概念

    众所周知,系统间的低耦合一直是大型企业应用系统集成追寻的目标,SOA面向服务架构的出现为我们的如何利用现有企业系统资源进行企业ERP系统设计和实现提供了重要的参考原则.SOA如此炙手可热,各大厂商都推 ...

  6. TSQL--SET ANSI_NULLS OFF

    当ANSI_NULLS 为ON时,遵循SQL92的标准,只能使用IS NULL 来判断值是否为NULL, 而不能使用=或<>来与NULL做比较,任何值包括NULL值与NULL值做=或< ...

  7. Java高质量代码之 — 泛型与反射

    在Java5后推出了泛型,使我们在编译期间操作集合或类时更加的安全,更方便代码的阅读,而让身为编译性语言的Java提供动态性的反射技术,更是在框架开发中大行其道,从而让Java活起来,下面看一下在使用 ...

  8. Apple开启双重认证过程

    1.准备 1.1 AppleID账号.密码 1.2 打算用于接收开启双重认证的十一位手机号 1.3 AppleID账号密保问题 2.操作步骤: 2.1 打开设置 2.2 点击个人账户头像 注意:当前有 ...

  9. 关于函数传参的其他问题(const形参实参/可变形参)

    const 形参和实参 当形参是 const 变量时,实参是 const 或者不是 const 变量都可以. 实参初始化形参时会忽略掉顶层 const: void gel(const int a){ ...

  10. const 迭代器和 const_iterator (vector/set/map)

    vector: 如同一般复合类型一样,vector 迭代器也可以声明成: const vector<int>::iterator it1 = v.begin(); vector<in ...