图表区域样式

图表有三个区域,如下图所示,红框内是控件区域,绿框内是ChartArea(图表区域),黑框内就是PlotArea(绘制区域)。


Chart提供了三个属性,用于设置三个区域的样式,包括边框、背景和渐变:

Style:设置控件区域的样式
ChartAreaStyle:设置图表区域的样式
PlotArea:设置绘制区域的样式

例如:

Dim Chart As WinForm.Chart '定义一个图表变量
Dim
Series As WinForm.ChartSeries '定义一个图系变量
Chart = Forms(
"窗口1").Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bubble
Chart.SeriesList.Clear()
'清除图表原来的图系
Series = Chart.SeriesList.Add()
'增加一个图系
Series.Length = 10
'图系包括10个数据点
Series.MarkShape = MarkShapeEnum.Dot
'指定数据标记为圆点。
Series.MarkColor = Color.Red
'指定数据标记的颜色
Series.LinePattern = LinePatternEnum.None
'不显示数据点之间的联线
For
i As Integer = 0 To 9 '指定每个数据点的位置
    Series.X(i) = i
'指定水平坐标
    Series.Y(i) = i + Rand.Next(5)
'垂直坐标用随机数生成
    Series.Y1(i) = Rand.Next(5)
'泡的大小用随机数生成
Next

Chart.Style.Border.BorderStyle = C1Chart.BorderStyleEnum.None
'去掉控件边框
Chart.Style.BackColor = Color.Transparent
'控件颜色设置为透明
Chart.ChartAreaStyle.Border.Color = Color.Green
'设置图表区的边框为绿色
Chart.ChartAreaStyle.BackColor = Color.FromArgb(255, 192, 192)
'渐变起始色
Chart.ChartAreaStyle.BackColor2 = Color.FromArgb(128, 255, 128)
'渐变结束色
Chart.ChartAreaStyle.GradientStyle = C1Chart.GradientStyleEnum.Horizontal
'渐变方式

得到的图表为

如果要配合数据看板使用,可以去掉全部边框,并将背景颜色设置为透明,例如:

Dim Chart As WinForm.Chart '定义一个图表变量
Dim
Series As WinForm.ChartSeries '定义一个图系变量
Chart = Forms(
"窗口1").Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bubble
Chart.SeriesList.Clear()
'清除图表原来的图系
Series = Chart.SeriesList.Add()
'增加一个图系
Series.Length = 10
'图系包括10个数据点
Series.MarkShape = MarkShapeEnum.Dot
'指定数据标记为圆点。
Series.MarkColor = Color.Red
'指定数据标记的颜色
Series.LinePattern = LinePatternEnum.None
'不显示数据点之间的联线
For
i As Integer = 0 To 9 '指定每个数据点的位置
    Series.X(i) = i
'指定水平坐标
    Series.Y(i) = i + Rand.Next(5)
'垂直坐标用随机数生成
    Series.Y1(i) = Rand.Next(5)
'泡的大小用随机数生成
Next

'
去掉全部边框,并将全部背景设置为透明
Chart.Style.Border.BorderStyle = C1Chart.BorderStyleEnum.None
Chart.ChartAreaStyle.Border.BorderStyle = C1Chart.BorderStyleEnum.None
Chart.Style.BackColor = Color.Transparent
Chart.ChartAreaStyle.BackColor = Color.Transparent
Chart.PlotAreaStyle.BackColor = Color.Transparent

得到:



Chart有一个
Transparent属性,将其设置为True,即可自动去掉全部边框并将背景设置为透明,所以最后几行代码可以简写为:

Chart.Transparent = True  '去掉全部边框,并将全部背景设置为透明

提示:

Chart还有LegendStyle、HeaderStyle、FooterStyle三个属性,分别表示图例、上标题和下标题的样式,用于对这三个图表元素进行更 多细节的设置,使用方法都是一样的,就不再举例说明了。


本页地址:http://www.foxtable.com/webhelp/topics/6002.htm