2024年4月4日发(作者:)

C# 画图控件chart –坐标轴刻度问题

项目中用到柱形图,当数据列比较多的时候, X轴的刻度标签会被精简为几个,无法在每

个柱子下方显示其刻度值。这时候可以用自定义标签解决问题。

效果如图: 本例子,标签设置为时间字符串,要显示每个时间区间的统计图。

自定义标签的使用很简单(三步),如下,就可以把“8:30”字符串放到刻度1的位置.

CustomLabel label = new CustomLabel();

= “8:30”;

tion =1D;

reas[0].(label);

需要注意的是, X坐标轴的数据类型,要有Auto,千万别设置为DateTime,否则标签不显示。

看完整代码如下 (建立一个WinForm工程,拖上chart控件,到中把serial1相关的代

码去掉,我们在下面代码中创建数据系列1,2):

using System;

using c;

using entModel;

using ;

using g;

using ;

using ;

using ;

using ng;

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

Series s1 = new Series();

Series s2 = new Series();

Random r = new Random();

for (int i = 1; i < 13; i++)

{

}

}

}

(i, (20, 30));

(i, (10, 30));

}

(s1);

(s2);

reas[0].lor = ;

DateTime t = ("8:30");

for (int i = 1; i < 26; i++)// 这里i从1开始,如果是0,标签不显示,不明白为什么

{

if (i%2==1)//奇数刻度位置放标签,这样吧柱形图包在刻度之间

{

CustomLabel label = new CustomLabel();

= tTimeString() ;

tion =i;

reas[0].(label);

cks = ne;

t = rs(1);

}

}