我很想知道vb.net中的DataVisualization.charting.chart是否针对我的特定问题进行了任何自动计数/绘图。
我有一个包含数千个用户代理字符串的文件,这些字符串是在一段时间内生成的。 UA字符串是从用户登录生成的。
在我的程序中,我将大约45种不同的环境识别为:操作系统+浏览器类型(即“Windows 7 + IE10”)。每次登录还有一个日期戳,格式为YYYY-MM。
我的任务是使用vb.net图表控件做一个折线图,其中我有环境(Y轴)和日期(X轴)。我希望控件在每次有特定数据集时递增,而不是保持一个可怕数量的数组。我的图表的计数器数据。
vb.net图表控件是否以这种方式自动递增?到目前为止我找不到任何东西。
答案 0 :(得分:0)
我不确定我是否理解这个问题(你想要自动增加什么?轴最小/最大?日期?还有什么?),但是如果你希望每次添加一个轴时更新轴新观点,图表肯定支持。只需在添加新点后调用Chart.ResetAutoValues()
,它就会计算出两个轴的新范围。
编辑:在将数据添加到图表之前排列数据。类似的东西:
Dictionary<string, int> values = new ...;
string[] uaStrings = ReadFileOfUAStrings();
foreach (string uaString in uaStrings)
{
values[uaString]++;
}
foreach (KVP in values)
{
chart.Series(kvp.Key).Points.Add(kvp.Value);
}
上述内容并未按日期分类,但您应该明白这一点。如上所述,如果将另一个UA字符串添加到文件中并且重新读取整个内容,那么它也不是非常有效,但是在它运行之后可以进行优化。