个人中心

联系我们

搜索
搜索 登录 免费注册
界面美化
业务优化
开发工具
图像管理
文档管理
Parasoft

新闻资讯

关注工具软件产品最新动态,了解软件开发行业新趋势。

用 Lightningchart WPF 2D 制作地理空间图

原创
软件开发
来源:LightningChart
图像处理
.net
WPF
GIS/地图
图表
数据可视化
2024-03-15
图像处理
.net
WPF
GIS/地图
图表
数据可视化

WPF 2D Maps介绍

在本文中,我们将讨论地理空间数据可视化中的 WPF 2D 地图以及 LightningChart .NET 库为我们提供的生成此类图表的工具。


地理空间(geospatial)是什么意思?

它指的是地理空间分析,重点是使用地理模型中使用的明确地理坐标或标识符来收集、呈现和操作图像、全球定位系统 (GPS) 坐标、照片和卫星数据(实时或历史)。 为此,有多种地理空间数据解决方案可用于特定的地理空间数据分析。


另一个相关词是地理配准(Georeferencing),它具有类似的含义,重点是根据空间坐标系确定元素的位置。


地理空间可视化应用 Geospatial Visualization Applications

一个使用大部分资源的非常熟悉的例子是 Google 地图或其他一些应用程序(例如 Uber)的地理位置。 这些应用程序重点关注使用地理空间信息生成的地图中的位置、人或车辆的位置。


这些信息可以帮助我们定位高海拔或低海拔区域、植被、城市化等。这些应用程序可能包含其他算法,帮助计算从 A 点到 B 点的旅行时间。另一个非常流行的例子是 Google 地球应用程序。


该应用程序可以根据卫星图像、卫星摄影测量的物体距离和高度生成 3D 元素,并显示特定位置的坐标。

JavaScript 动画地理气温图示例


WPF 2D 地理图表库

当我们谈论 WPF 2D 图形库时,我们谈论的是 2D 对象,也称为 2D 模型或图像,由两个维度组成:宽度和长度。 这些图形没有深度,2D 绘图工具集成了矢量几何实体,例如点、线、弧和多边形。


如上所述,我们可以假设二维地图是在笛卡尔平面内生成的地理区域或另一种类型的表面的表示。 笛卡尔平面是由两条渐变的垂直线(我们称为坐标轴)形成的笛卡尔坐标系。


水平轴通常称为 X,垂直轴通常称为 Y。这两个轴相交于称为坐标原点 O 的点。使用 2D 地图可以让我们对研究区域有一个广泛而直接的了解。 尽管 WPF 2D 地图是平面表示,但解释地图内区域和对象的深度和体积可能更困难。


如何使用2D地图可视化数据?

在这种情况下,在开发应用程序时,例如在框架和第三方 API 的帮助下,数据可以在二维地图中可视化。 例如,WPF 允许我们生成基本的 2D 图形,其中可以包含渐变、位图、比例和位置编辑等视觉效果。 这些图表由 WPF 库提供。 WPF 允许我们使用外部库(例如 LightningChart .NET),它可以帮助我们生成更复杂的图形,利用标记中的代码隐藏和样式。


关于WPF,WindowsPresentationFoundation是一个专注于开发具有高级用户界面控制的应用程序的框架,分为两部分:标记和代码隐藏。


用于构建 2D 地图的 LightningChart 功能

LightningChart .NET 使用 WPF 2D 地图为我们提供各种地理空间数据可视化图表。 其中每一个都可以在交互式示例工具自动生成的 WPF 项目中进行测试和使用。 所有这些 WPF 2D 地图都使用 LC .Net 库提供的 XY 图表工具。 如果您想查看编程和代码实现的示例,我建议您访问我们的任何 .NET XY 图表文章。


2D 地图图表基于 X-Y 坐标。 与条形图或折线图不同,这些图操作位图图像。 可以通过提供地理位置数据的第三方 API 获取值(请注意,访问此信息可能需要这些 API 的许可证)。


ViewXY Charts

如上所述,要创建 2D 地图,我们需要使用 XY 图表或视图。 ViewXY允许以笛卡尔、XY图形格式呈现各种点线系列、面积系列、高低系列、强度系列、热图、条形系列、波段、线系列光标等。 系列绑定到 X 轴和 Y 轴,并且它们使用指定轴的值范围。

ViewXY 还可以显示地理地图。 地理地图可以与任何 ViewXY 系列类型结合使用。 地图绘制在背景中,系列绘制在它们上方。


Cartesian Maps

使用“地图”属性及其子属性来显示地理地图。 LightningChart .NET 地图分为两种不同的类别:矢量地图和切片地图。 这些地图以所谓的“等距矩形投影”显示。 此投影允许使用 LightningChart 的系列类型和其他几乎全部绑定到 X 和 Y 轴的对象,同时与地图一起使用。


矢量地图:演示示例,包括世界地图、地图路线、包含环境数据的地图和风数据。 地理矢量数据存储在 LightningChart 地图文件中,扩展名为 .md。 LightningChart 附带一组地图文件。 X 轴用于经度,Y 轴用于纬度。 地图坐标为十进制,纬度原点位于赤道,经度原点位于英国格林威治。


图层和UI 属性

每个地图文件可以包含多个图层。 例如,陆地区域、湖泊、河流、道路和城市的图层。 图层及其数据可从 Layers 数组属性访问。 每层都有特定的类型。 可以使用相应的选项属性更改图层外观选项。


使用 LandOptions 修改陆地区域的外观,使用 LakeOptions 修改湖泊,使用 RiverOptions 修改河流,使用 RoadOptions 修改道路,使用 CityOptions 修改城市,使用 OtherOptions 修改未指定的图层类型。


地图背景

添加 MapBackground 对象时,Maps.Backgrounds 属性允许将位图图像显示为地图的背景。 卫星图像或其他栅格图像可从多个 GIS 数据提供商处获得(可能需要单独的 API 许可证)。


在这种类型的 WPF 2D 地图中,可以将图像设置为 Image 属性,并且可以使用 LatitudeMin、LatitudeMax、LongitudeMin 和 LongitudeMax 属性设置其纬度和经度范围。 超出设定范围的图像不会显示。 要通过地图图层显示背景,可能需要调整每个图层的填充设置。 使用透明颜色或 Alpha 级别较低的颜色。


IntensityGridSeries

IntensityGridSeries 允许可视化 M x N 节点数组,由指定的值范围调色板着色,节点之间的颜色是插值的。 IntensityGridSeries 是 X 和 Y 维度上均匀分布的矩形系列。 该系列还允许渲染轮廓线、轮廓线标签和线框。

数据作为二维数组存储在 Data 属性中。 每个数组项都是 IntensityPoint 类型。 将每个节点的数据值存储在 IntensityPoint 结构的 Value 字段中,该字段告诉应使用 ValueRangePalette 中的哪种颜色。


WPF 2D Maps类型

以下是 LightningChart .NET 提供的一些 WPF 2D 地图图表。 注册试用后,可以在交互式示例应用程序中轻松找到这些示例。


Map Routes

Route mapping是物流和旅行规划的基本实践。 它包括创建详细的地图,显示特定路线上一系列兴趣点、目的地或停靠点的位置。 通过使用这张地图,我们甚至可以同时生成世界各地的一条或多条路线的点。


Stencil Maps

模板图允许我们模拟环境数据,例如降雨、温度、天气现象等。在这种类型的地图中,我们不依赖于外部API,因此我们可以直接输入我们自己的数据源。 在此图表中,使用了名为 IntensityGridSeries 的工具,它使我们能够生成表示自然主体、物理量值、质量、表达等表现的强度程度的图表。 当您想要显示部分区域气候因素的强度时,此工具非常有用。


Wind Maps

Wind map是根据指示的位置和时间准确显示风速测量值的地图。 风向用箭头表示,颜色可用于识别风速。 在此地图中,我们还使用强度工具,因为这样我们可以按区域表示风速的变化。


结论

在这里没有必要强调二维地图的重要性。 数字地图中技术的实施使我们能够更好地了解影响我们环境的情况的影响。 我们可以观察天气的变化并做出确保我们安全的决定,或者只是在家里保持舒适。 从个人到商业用途,2D 地图将帮助我们做出决策,从而节省时间并帮助我们改善物流。


能够在我们的城市、州或其他国家建立旅行和/或贸易路线有助于改善许多人的经济。 使用具有实时地理位置的地图使我们能够在未知区域中毫无挫折或风险地移动。 这项通过遥测技术实现的技术进一步增强了地理位置地图的重要性。


闪电图是一个允许我们生成地理定位工具的工具。 我知道如果您没有太多经验,编程可能会很复杂,但交互式示例工具可以解决这个问题。 我建议您下载该应用程序并使用它进行练习。


您将能够搜索此项目中提到的地图,查看它们的实际情况,如果需要,还可以生成 .NET 项目。 在此项目中,您将能够试验代码并根据自己的喜好对其进行自定义。 解释了 LC .NET 提供的最重要的工具。 您将发现您只需要了解这些工具的使用即可创建地图。


其余代码将使用交互指令和对象声明,这将用于向 LC .NET 对象提供信息。 LC .NET 是一个针对渲染图像和效果以及处理数百万数据点而优化的库。 如果您关心性能,我向您保证 LightningChart 不会给您带来问题。


许多 LC .NET 图表都有 JavaScript 版本,因此您可以访问并下载项目的教程。感谢您的关注,谢谢!


联系我们

周一至周日 8:00-23:00

免费热线

023-62585653

张经理:13082556879

罗经理:17558866126

许经理:13057566525

开发外包

ERP-一体化

小程序

企业微信客服

版权所有:重庆庚乾信息科技有限公司 ©2025 Gengqian Information Technology Co., Ltd. 渝ICP备2022008063号-2 渝公网安备50010702505508

版权所有:重庆庚乾信息科技有限公司

©2025 Gengqian Information Technology Co., Ltd. 渝ICP备2022008063号-2 渝公网安备50010702505508