У меня есть следующая динамическая диаграмма ASP.NET ниже.Как я делаю линии, идущие вниз по графику для каждой даты на оси X.В настоящее время по оси Y идут 3 линии: июль 2009 г., май 2010 г. и март 2011 г. Мне нужна линия для каждой даты, чтобы вы могли видеть каждую точку на линии, а также хочу отображать каждую дату, когда точка являетсяразмещены на графике.
Кроме того, кажется, что в начале и в конце графика есть отступы, а правой границы нет.Как мне избавиться от отступов и получить правильную границу на месте?
изображение диаграммы
Вот мой код:
Front End:
<asp:Chart ID="chtReport" runat="server" Width="650px" Height="400px" ImageType="Jpeg">
<Series>
<asp:Series Name="TotalLine" YValueType="Double" ChartType="Line" ChartArea="MainChartArea" />
<asp:Series Name="GoalLine" YValueType="Double" ChartType="Line" ChartArea="MainChartArea" />
<asp:Series Name="AverageLine" YValueType="Double" ChartType="Line" ChartArea="MainChartArea" />
<asp:Series Name="TotalPoint" YValueType="Double" ChartType="Point" ChartArea="MainChartArea" />
<asp:Series Name="GoalPoint" YValueType="Double" ChartType="Point" ChartArea="MainChartArea" />
<asp:Series Name="AveragePoint" YValueType="Double" ChartType="Point" ChartArea="MainChartArea" />
</Series>
<ChartAreas>
<asp:ChartArea Name="MainChartArea">
</asp:ChartArea>
</ChartAreas>
</asp:Chart>
Back End
protected void Page_Load(object sender, EventArgs e)
{
for (DateTime date = startDate; date <= ChartDetails.EndDate; date = date.AddMonths(1))
{
dates.Add(date.ToString());
}
grdChart.DataSource = dates;
grdChart.DataBind();
chtReport.ChartAreas["MainChartArea"].AxisY.Minimum = 0;
chtReport.ChartAreas["MainChartArea"].AxisY.Maximum = 100;
chtReport.ChartAreas["MainChartArea"].AxisX.Title = "Date Range";
chtReport.ChartAreas["MainChartArea"].AxisY.Title = "Percent";
}
protected void grdChart_ItemDataBound(object sender, DataGridItemEventArgs e)
{
// Extra Code above...
chtReport.Series["TotalLine"].Points.AddXY(rowDate.ToString("MMM yyyy"), total);
chtReport.Series["GoalLine"].Points.AddXY(rowDate.ToString("MMM yyyy"), total);
chtReport.Series["AverageLine"].Points.AddXY(rowDate.ToString("MMM yyyy"), total);
chtReport.Series["TotalPoint"].Points.AddY(total);
chtReport.Series["GoalPoint"].Points.AddXY(rowDate.ToString("MMM yyyy"), total);
chtReport.Series["AveragePoint"].Points.AddXY(rowDate.ToString("MMM yyyy"), total);
}
Заранее благодарим за любую помощь.