使用 C# 和 .Net 4(我也尝试过 4.5.1)我想在图表上绘制代表不同时间跨度的各个区域,有些短,有些长。对于非常短的时间跨度(小于一个像素?),一些(但不是全部)消失了。当图表稍微调整大小时,不同的会消失,如下所示。
我看不到任何模式来预测未绘制的模式 - 请参阅下面的代码片段......
using System;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting;
namespace ChartTest
{
public partial class Form1 : Form
{
public Form1( )
{
InitializeComponent( );
var series = new Series( )
{
ChartType = SeriesChartType.Area,
MarkerStyle = MarkerStyle.None,
XValueType = ChartValueType.DateTime,
YAxisType = AxisType.Primary,
};
AddLine( DateTime.Parse( "17/6/2015" ), series );
AddLine( DateTime.Parse( "18/6/2015" ), series );
AddLine( DateTime.Parse( "19/6/2015" ), series );
AddLine( DateTime.Parse( "20/6/2015" ), series );
AddLine( DateTime.Parse( "21/6/2015" ), series );
chart1.Series.Add( series );
}
private static void AddLine( DateTime dateTime, Series series )
{
var endTime = dateTime.AddMinutes( 2 );
series.Points.AddXY( dateTime, 0 );
series.Points.AddXY( dateTime, 1 );
series.Points.AddXY( endTime, 1 );
series.Points.AddXY( endTime, 0 );
}
}
}
任何人都知道如何在不使区域任意宽的情况下避免这种情况?任何人都知道我是否可以使用 Paint 或 PrePaint 事件来调整绘图?
提前致谢。