c# wpf LiveCharts 饼图 简单试验

1.概要

c# wpf LiveCharts 饼图 简单试验

2.代码

复制代码
<Window x:Class="WpfApp3.Window5"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
        xmlns:local="clr-namespace:WpfApp3"
        mc:Ignorable="d"
        Title="Window5" Height="450" Width="800">
    <Grid>
        <lvc:PieChart Height="220" InnerRadius="20" Margin="5"
                        Series="{Binding PieSeriesCollection}" LegendLocation="Right" >
            <lvc:PieChart.ChartLegend>
                <lvc:DefaultLegend BulletSize="10"></lvc:DefaultLegend>
            </lvc:PieChart.ChartLegend>
            <lvc:PieChart.DataTooltip>
                <lvc:DefaultTooltip BulletSize="10"></lvc:DefaultTooltip>
            </lvc:PieChart.DataTooltip>
        </lvc:PieChart>
    </Grid>
</Window>

using LiveCharts;
using LiveCharts.Wpf;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;

namespace WpfApp3
{
    /// <summary>
    /// Window5.xaml 的交互逻辑
    /// </summary>
    public partial class Window5 : Window
    {
        public Window5()
        {
            InitializeComponent();
            this.DataContext = new HomePgVM4();
        }
    }
    public class HomePgVM4 : NotifyPropertyBase
    {

        public SeriesCollection PieSeriesCollection { get; set; }

        public HomePgVM4()
        {
            GetPie();
        }
        private void GetPie()
        {
            PieSeriesCollection = new SeriesCollection();
            double[] pieValues = new double[] { 25, 36, 85, 45, 69, 45, 85 };
            for (int i = 0; i < pieValues.Length; i++)
            {
                PieSeriesCollection.Add(new PieSeries
                {
                    Title = "商户 -- " + i,
                    Values = new ChartValues<double> { pieValues[i] },
                    DataLabels = true,
                });
            }
        }
    }
}

3.运行结果

相关推荐
小二·5 分钟前
MyBatis基础入门《十五》分布式事务实战:Seata + MyBatis 实现跨服务数据一致性
分布式·wpf·mybatis
star _chen6 分钟前
C++ std::move()详解:从小白到高手
开发语言·c++
lzhdim10 分钟前
C#开发者必知的100个黑科技(前50)!从主构造函数到源生成器全面掌握
开发语言·科技·c#
刺客xs19 分钟前
Qt----事件简述
开发语言·qt
程序员-King.22 分钟前
【Qt开源项目】— ModbusScope-进度规划
开发语言·qt
syt_101331 分钟前
Object.defineProperty和Proxy实现拦截的区别
开发语言·前端·javascript
liu****31 分钟前
Python 基础语法(二):程序流程控制
开发语言·python·python基础
charlie11451419132 分钟前
如何快速在 VS2026 上使用 C++ 模块 — 完整上手指南
开发语言·c++·笔记·学习·现代c++
时空无限35 分钟前
Java Buildpack Reference
java·开发语言
yong999037 分钟前
基于C#与三菱FX5U PLC实现以太网通信
网络·c#·php