当前位置:   article > 正文

探索 LiveCharts2:一款强大的跨平台图表库

livechart2

9c2f425b51cd71f102aebfb720ac7b16.png

fc076d0ceb17b3de6b42f6466ddb1628.gif

8dbcac284a68fbd13bba9905bf324a85.png

你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用!

LiveCharts2

LiveCharts2 是一个简单、灵活、交互式以及功能强大的跨平台图表库。

b8f72ec370a8bb4ff46693632bdb6d3a.png

LiveCharts2 现在几乎可以在任何地方运行,包括 Maui、Uno Platform、Blazor-wasm、WPF、WinForms、Xamarin、Avalonia、WinUI、UWP。

92eaa22748a3ee9cb692acda9ce6601e.png

LiveCharts2 (v2) 是LiveCharts (v0)的演变,它修复了其前身的主要设计问题,它专注于在任何地方运行,在不丢失在 v0 中已有的东西的情况下提高了灵活性。

d9056883b165390e73a610a27447b483.gif

LiveCharts2 的特点之一是性能优异,它使用了一些优化技巧,比如数据虚拟化、图形缓存、异步绘制等,能够在大数据量下仍然能保持良好的响应速度和渲染性能。另外,它还提供了丰富的文档和示例,方便开发者快速入手和使用。

图表示例

LiveCharts2 提供了多种类型的图表,包括折线图、面积图、柱状图、散点图、饼图等。同时,它还支持多个图表联动显示,支持动态更新数据、自定义样式和动画效果等功能。

17568f419366013ce38833bd104bb67c.png 8a75c32ad3764b033ec09718241bed87.png 39dc9040064d91cdb0d4483ad748f7d8.png

在控制台程序中生成图像

LiveCharts 可以在不需要任何 UI 框架的情况下呈现图像,只要安装 SkiaSharp View 包,就可以在服务器端或控制台应用程序中构建图像,它可以从 NuGet 安装:

LiveChartsCore.SkiaSharpView
  1. using LiveChartsCore;
  2. using LiveChartsCore.Geo;
  3. using LiveChartsCore.SkiaSharpView;
  4. using LiveChartsCore.SkiaSharpView.Drawing.Geometries;
  5. using LiveChartsCore.SkiaSharpView.SKCharts;
  6. var cartesianChart = new SKCartesianChart
  7. {
  8.     Width = 900,
  9.     Height = 600,
  10.     Series = new ISeries[]
  11.     {
  12.         new LineSeries<int> { Values = new int[] { 1546 } },
  13.         new ColumnSeries<int> { Values = new int[] { 4824 } }
  14.     }
  15. };
  16. // you can save the image to png (by default)
  17. // or use the second argument to specify another format.
  18. cartesianChart.SaveImage("cartesianChart.png");
  19. var pieChart = new SKPieChart
  20. {
  21.     Width = 900,
  22.     Height = 600,
  23.     Series = new ISeries[]
  24.     {
  25.         new PieSeries<int> { Values = new int[] { 10, } },
  26.         new PieSeries<int> { Values = new int[] { 6 } },
  27.         new PieSeries<int> { Values = new int[] { 4 } }
  28.     }
  29. };
  30. pieChart.SaveImage("pieChart.png");
  31. var geoHeatMap = new SKGeoMap
  32. {
  33.     Width = 900,
  34.     Height = 600,
  35.     Series = new IGeoSeries[]
  36.     {
  37.         new HeatLandSeries
  38.         {
  39.             Lands = new HeatLand[]
  40.             {
  41.                 new() { Name = "mex", Value = 10 },
  42.                 new() { Name = "usa", Value = 15 },
  43.                 new() { Name = "can", Value = 8 }
  44.             }
  45.         }
  46.     }
  47. };
  48. geoHeatMap.SaveImage("geoHeatMap.png");
  49. // alternatively you can get the image and do different operations:
  50. using var image = cartesianChart.GetImage();
  51. using var data = image.Encode();
  52. var base64CartesianChart = Convert.ToBase64String(data.AsSpan());
  53. Console.WriteLine("Images saved at the root folder!");

往期推荐:

开源的 .NET 数据库迁移框架

胡桃工具箱, 基于 .NET 开源的多功能原神工具箱

使用 C# 开源的微信/QQ/TIM 防撤回神器

推荐 3 个 .NET 流行的 Redis 客户端库

推荐一个开源的现代化的 PDF 生成组件

项目地址

在 Dotnet工具箱 公众号内,回复 303,即可获取项目地址。

047b870fb2f5300f3628f6deb1ba83c1.jpeg

Dotnet 工具箱

扫码关注我们

5304ef187895aa92a680013a5978772d.png

分享

c819c43de6da76bcba6992d4220640bc.png

点收藏

1e1325dc150e35aedc862067bbc15395.png

点点赞

b12824b3d6ccbea6beb85ac6274f93b6.png

点在看

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/568195
推荐阅读
相关标签
  

闽ICP备14008679号