C# winform Chart画图

借鉴如下两篇文章:
chart数据设置
图例显示位置

有问题请指正 chart也不太熟 记录在这里方便以后自己查找

完成效果
C# winform Chart画图_第1张图片
C# winform Chart画图_第2张图片

先在窗体中拖控件
C# winform Chart画图_第3张图片
具体代码

private void initChart(bool f = false)
{
     
    //清除Series 和 Legends
    chart1.Series.Clear();
    chart1.Legends.Clear();
    //绑定数据源  这里是一个List  属性有Month、FlightsAmount、TicketsAmount、TicketsRevenue
    chart1.DataSource = statistics;
    //添加Series 和 Legends    通过Series去绑定数据项   Legends去控制图例的位置
    chart1.Series.Add(cbxView.SelectedItem.ToString());
    chart1.Legends.Add(cbxView.SelectedItem.ToString());

    //cbxView.SelectedItem.ToString()下拉选中项的值
    //ChartType 图形类型 Line 折线图
    chart1.Series[cbxView.SelectedItem.ToString()].ChartType = SeriesChartType.Line;
    //X坐标轴的值绑定  对应List中的属性Month
    chart1.Series[cbxView.SelectedItem.ToString()].XValueMember = "Month";
    //设置X轴类型
    //chart1.Series[cbxView.SelectedItem.ToString()].XValueType = ChartValueType.Date;
    //设置Y坐标轴的值绑定 通过下拉选中的值 动态去绑定
    chart1.Series[cbxView.SelectedItem.ToString()].YValueMembers = cbxView.SelectedItem.ToString();
    //图例的位置 上下左右
    chart1.Legends[cbxView.SelectedItem.ToString()].Docking = Docking.Bottom;
    //图例的位置 是否靠近图啥啥啥的  选择Center 就是下方居中了
    chart1.Legends[cbxView.SelectedItem.ToString()].Alignment = StringAlignment.Center;

    //通过传进来的值去判断是否要显示数据点的值
    if (f)
    {
     
        //设置显示数据点的值
        chart1.Series[cbxView.SelectedItem.ToString()].IsValueShownAsLabel = true;
    }
}

你可能感兴趣的:(c#,可视化)