提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:董玉霞|2022-08-24 11:31:05.370|阅读 113 次
概述:使用LightningChart.NET,您可以为各种用例创建不同类型的图表。在本教程中,我们将展示如何使用 IntensityGridSeries 创建简单的 2D 热图。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
使用LightningChart.NET,您可以为各种用例创建不同类型的图表。以前的教程已经演示了如何创建具有多个线系列和轴、面积序列和条形系列的简单 2D 图表。在本教程中,我们将展示如何使用 IntensityGridSeries 创建简单的 2D 热图。
热图是一个矩阵,其中包含以颜色形式显示的各个值。在数据可视化中,热图可用于通过颜色的变化来提供有关数据值的视觉内容和反馈。对于本教程,我们建议您创建新的 WinForms 或 WPF 应用程序。LightningChart提供了两种创建热图的方法 - IntensityGridSeries和TensityMeshSeries。IntensityGrid是X和Y空间中均匀间隔的矩形系列,允许M x N节点数组的可视化。IntensityMesh类似于ProtensionyGrid,但在TensionyMesh中,系列不需要是矩形的,而系列节点可以在X和Y空间中任意定位。在本教程中,我们使用的是 IntensityGridSeries。
// Create a Heat Map as IntensityGridSeries. var heatMap = new IntensityGridSeries(_chart.ViewXY, axisX, axisY);
为了以所需的颜色显示数据值,我们需要创建一个 ValueRangePalette。ValueRangePalette 用于根据值定义数据着色的颜色。
// Creating palette for IntensityGridSeries. var palette = new ValueRangePalette(series);
图表控件LightningChart具有ValueRangePalette的预设值。为了以所需的方式为数据着色,我们首先需要清除ValueRangePalette及其调色板步骤。
// LightningChart has some preset values for palette steps. // Clear the preset values from palette before setting new ones. foreach (var step in palette.Steps) { step.Dispose(); } palette.Steps.Clear();
然后,我们需要使用调色板类型为调色板设置颜色。您可以使用 System.Windows.Media.Color 或 System.Drawing.Color 定义颜色,具体取决于您使用的是 WPF 还是 WinForms。PaletteType 定义调色板着色在应用程序中的外观。
对于此示例,我们将“调色板类型”设置为“渐变”。
// Add steps into palette. // Palette is used for presenting data in Heat Map with different colors based on their value. palette.Steps.Add(new PaletteStep(palette, Color.FromRgb(0, 0, 255), -25)); palette.Steps.Add(new PaletteStep(palette, Color.FromRgb(20, 150, 255), 0)); palette.Steps.Add(new PaletteStep(palette, Color.FromRgb(0, 255, 0), 25)); palette.Steps.Add(new PaletteStep(palette, Color.FromRgb(255, 255, 20), 50)); palette.Steps.Add(new PaletteStep(palette, Color.FromRgb(255, 150, 20), 75)); palette.Steps.Add(new PaletteStep(palette, Color.FromRgb(255, 0, 0), 100)); palette.Type = PaletteType.Gradient; palette.MinValue = -50;
您可以使用强度点将数据添加到热点图。强度点是强度系列的数据点。在此示例中,我们使用值作为 IntensityPoints 填充 IntensityGrid,这些值用 ValueRangePalette 着色。
// Generate data. public void GenerateData(int columns, int rows) { // Create new IntensityPoint series for data. var data = new IntensityPoint[_columns, _rows]; // Disable rendering before updating chart properties to improve performance // and to prevent unnecessary chart redrawing while changing multiple properties. _chart.BeginUpdate(); // Set data values and add them to Heat Map. for (int i = 0; i < _columns; i++) { for (int j = 0; j < _rows; j++) { // Add values to the IntensityPoint series, points are generated by using following function. data[i, j].Value = 30.0 + 20 * Math.Cos(20 + 0.0001 * (double)(i * j)) + 70.0 * Math.Cos((double)(j - i) * 0.01); } } // Add generated data as Heat Map data. _heatMap.Data = data; // Call EndUpdate to enable rendering again. _chart.EndUpdate(); }
通过本文,您可以快速了解到如何建立2D 热点图图表,想要了解更多相关教程,欢迎进入慧都官网查看。
欢迎加入LightningChart技术交流群,获取最新产品咨询:740060302
想要了解或购买LightningChart 正版授权的朋友,欢迎咨询。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
高性能WPF和Winforms图表,可以实时可视化多达1万亿个数据点。
LightningChart JS高性能的JavaScript图表库,专注于实时数据可视化。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢