文章目录
目录
一、Chart的五大属性
- ChartAreas属性
- Series属性
- Legends属性
- Titles 属性
- Annotations属性
ChartAreas:图表区属性,设置图标数据的背景,比如隐藏还是显示横纵交叉线,颜色的设置
Series:图表序列属性,设置数据的外观,数据类型(折线图、树状图、饼图等)
Legends:图表图例集合,
Titles:图表标题集合,设置图表的标题
Annotations:批准集合
二、折线图
1.创建项目
新建一个.NET Framework 类型的 Winfrom 项目,创建一个窗体,在工具箱里找到 Chart 控件,拖入到界面中
拖过来时运行是没有数据的
2.修改图表样式
点击chart图表在属性中找到series,这里可以改变她的图表样式,也就是我们需要的折线图
在charttype中选择我们需要的折现图,还有其他的图形也可以选择
3.绑定数据
在窗体加载页面过程中给折线图加入数据,x轴数据为循环中是,y轴为随机数并加入折线图中
private List<int> XList = new List<int>();
private List<int> YList = new List<int>();
//随机数
private Random randoms = new Random();
private void chart_Load(object sender, EventArgs e)
{
for (int i = 0; i < 6; i++)
{
XList.Add(i);
YList.Add(randoms.Next(1, 10));
}
chart1.Series["Series1"].Points.DataBindXY(XList, YList);
}
运行后
4.改变X轴和Y轴的刻度线
取消X轴的刻度线,Y轴为重新点连的线
//创建X轴和Y轴
private List<int> XList = new List<int>();
private List<int> YList = new List<int>();
//随机数
private Random randoms = new Random();
private void chart_Load(object sender, EventArgs e)
{
//设置Y轴网格类型为重复点连的线 X轴为不存在
chart1.ChartAreas[0].AxisX.MajorGrid.LineDashStyle = ChartDashStyle.NotSet;
chart1.ChartAreas[0].AxisY.MajorGrid.LineDashStyle = ChartDashStyle.DashDot;
for (int i = 0; i < 6; i++)
{
XList.Add(i);
YList.Add(randoms.Next(1, 10));
}
chart1.Series["Series1"].Points.DataBindXY(XList, YList);
}
运行为
5.删除Series1图例
方法有二种中,在代码删,在窗体删
1.在代码中删除
//取消Series1图例
chart1.Legends[0].Enabled = false;
2..在窗体中删除
在图表属性中选择Legends
运行后
6.自定义X轴和Y轴的刻度值
创建一个成绩折线图,在X轴显示课程名称,在Y轴显示成绩,注意要把X轴的数据类型变成string
//创建X轴和Y轴
//把X轴的数据类型变为字符串
private List<string> XList = new List<string>();
private List<int> YList = new List<int>();
//随机数
private Random randoms = new Random();
private void chart_Load(object sender, EventArgs e)
{
//设置Y轴网格类型为重复点连的线 X轴为不存在
chart1.ChartAreas[0].AxisX.MajorGrid.LineDashStyle = ChartDashStyle.NotSet;
chart1.ChartAreas[0].AxisY.MajorGrid.LineDashStyle = ChartDashStyle.DashDot;
//取消Series1图例
//chart1.Legends[0].Enabled = false;
for (int i = 0; i < 6; i++)
{
//XList.Add(i);
//YList.Add(randoms.Next(1, 10));
if (i == 0)
{
XList.Add(string.Format("C语言"));
YList.Add(88);
}
else if (i == 1)
{
XList.Add(string.Format("SQL"));
YList.Add(90);
}
else if (i == 2)
{
XList.Add(string.Format("C#"));
YList.Add(56);
}
else if (i == 3)
{
XList.Add(string.Format("高数"));
YList.Add(99);
}
else if (i == 4)
{
XList.Add(string.Format("英语"));
YList.Add(85);
}
}
chart1.Series["Series1"].Points.DataBindXY(XList, YList);
}
运行后
7.改变图表背景颜色
代码如下
//数据背景色
chart1.ChartAreas[0].BackColor = Color.Wheat;
运行后
8.显示Y轴的数据
折线图不能明确直观的显示数据,需要我们把数据显示出来会更清楚
代码如下
//显示折现的数据
chart1.Series[0].IsValueShownAsLabel = true;
运行如下
三、pictureBox照片轮播
新建一个.NET Framework 类型的 Winfrom 项目,创建一个窗体,在工具箱里找到 pictureBox 控件,拖入到界面中
在添加一个imageList控件,用来存储照片的集合
1.imageList控件集合
在imageList控件中集合加入你要轮播的照片
2.timer定时控件
timer是一个定时控件,照片轮播需要定时来控制多少秒来变化,一定要把Enabled变为true,Interval是多少豪秒来定时
3.label文本控件
定义一个label控件来控制不同照片显示出时不同的文本内容,在工具箱里找到label 控件,拖入到界面中
在label属性中的text显示的内容就是我们要改变不同照片轮播的文本内容
点击timer定时控件中写入以下代码
private void timer1_Tick_1(object sender, EventArgs e)
{
//轮播不同照片所显示的文本
this.pictureBox1.Image = this.imageList1.Images[i];
if (i == 0)
{
this.label1.Text = "111111";
}
else if (i == 1)
{
this.label1.Text = "222222";
}
else if (i == 2)
{
this.label1.Text = "333333";
}
else if (i == 3)
{
this.label1.Text = "4444444";
}
i++;
if (i > imageList1.Images.Count - 1)
{
i = 0;
}
}