winform利用liveCharts绘制折线图

winform利用liveCharts绘制折线图

        public void showMetrics()
        {
            cartesianChart1.Series = new SeriesCollection
            {
                new LineSeries
                {
                    Title = "Loss",
                    Values = new ChartValues<double> {}
                },
                new LineSeries
                {
                    Title = "Percision",
                    Values = new ChartValues<double> {},
                    PointGeometry = null
                },
                new LineSeries
                {
                    Title = "Recall",
                    Values = new ChartValues<double> {},
                    PointGeometry = DefaultGeometries.Square,
                    PointGeometrySize = 15
                },
                new LineSeries
                {
                    Title = "mAP",
                    Values = new ChartValues<double> {},
                    PointGeometry = DefaultGeometries.Square,
                    PointGeometrySize = 15
                }
            };

            cartesianChart1.AxisX.Add(new Axis
            {
                Title = "Epoch",
                Labels = new[] { "0", "1", "2", "3", "4" }
            });

            cartesianChart1.AxisY.Add(new Axis
            {
                Title = "Value",
                LabelFormatter = value => value.ToString()
            });

            cartesianChart1.LegendLocation = LegendLocation.Right;

            cartesianChart1.DataClick += CartesianChart1OnDataClick;
        }

        private void CartesianChart1OnDataClick(object sender, ChartPoint chartPoint)
        {
            MessageBox.Show("You clicked (" + chartPoint.X + "," + chartPoint.Y + ")");
        }
        int count = 0;
        List<string> x_data = new List<string>();
        private void metroButton2_Click(object sender, EventArgs e)
        {

            cartesianChart1.Series[0].Values.Add(0.1);
            cartesianChart1.Series[1].Values.Add(0.2);
            cartesianChart1.Series[2].Values.Add(0.3);
            cartesianChart1.Series[3].Values.Add(0.4);
            x_data.Add(count.ToString());
            cartesianChart1.AxisX[0].Labels = x_data.ToArray();
            count++;


        }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是在C# Winform中使用liveCharts创建柱状图的详细代码: 1. 首先,你需要在你的C#项目中安装liveCharts库。你可以使用NuGet包管理器来安装它。 2. 然后,在你的C#代码中,引用liveCharts库。你可以使用以下代码来引用它: ```csharp using LiveCharts; using LiveCharts.Wpf; using LiveCharts.WinForms; ``` 3. 在你的窗体或用户控件中添加一个Panel控件,并将其命名为chartPanel。你可以使用以下代码来创建它: ```csharp Panel chartPanel = new Panel(); chartPanel.Dock = DockStyle.Fill; this.Controls.Add(chartPanel); ``` 4. 在你的C#代码中创建一个CartesianChart控件。你可以使用以下代码来创建它: ```csharp CartesianChart chart = new CartesianChart(); chart.Dock = DockStyle.Fill; chartPanel.Controls.Add(chart); ``` 5. 设置柱状图的数据。你可以使用ChartValues类来设置数据,如以下代码所示: ```csharp ChartValues<double> values = new ChartValues<double> { 10, 50, 39, 50, 70 }; ``` 6. 创建一个ColumnSeries对象,并将其添加到SeriesCollection中。你可以使用以下代码来创建它: ```csharp ColumnSeries series = new ColumnSeries(); series.Title = "柱状图"; series.Values = values; SeriesCollection seriesCollection = new SeriesCollection(); seriesCollection.Add(series); ``` 7. 设置柱状图的属性。你可以使用以下代码来设置柱状图的属性: ```csharp chart.AxisX.Add(new Axis { Title = "X轴", Labels = new[] { "A", "B", "C", "D", "E" } }); chart.AxisY.Add(new Axis { Title = "Y轴", LabelFormatter = value => value.ToString("N") }); chart.Series = seriesCollection; ``` 8. 最后,将柱状图添加到窗体或用户控件中。你可以使用以下代码将它添加到窗体或用户控件中: ```csharp this.Controls.Add(chartPanel); ``` 这样,你就可以在C# Winform中使用liveCharts创建柱状图了。完整代码如下: ```csharp using LiveCharts; using LiveCharts.Wpf; using LiveCharts.WinForms; public partial class Form1 : Form { public Form1() { InitializeComponent(); CreateChart(); } private void CreateChart() { Panel chartPanel = new Panel(); chartPanel.Dock = DockStyle.Fill; this.Controls.Add(chartPanel); CartesianChart chart = new CartesianChart(); chart.Dock = DockStyle.Fill; chartPanel.Controls.Add(chart); ChartValues<double> values = new ChartValues<double> { 10, 50, 39, 50, 70 }; ColumnSeries series = new ColumnSeries(); series.Title = "柱状图"; series.Values = values; SeriesCollection seriesCollection = new SeriesCollection(); seriesCollection.Add(series); chart.AxisX.Add(new Axis { Title = "X轴", Labels = new[] { "A", "B", "C", "D", "E" } }); chart.AxisY.Add(new Axis { Title = "Y轴", LabelFormatter = value => value.ToString("N") }); chart.Series = seriesCollection; this.Controls.Add(chartPanel); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值