考虑构建 ASP.NET 图表图像的 ASP.NET MVC 控制器方法。
public FileStreamResult MakeImg(IEnumerable<MyObj> stats)
{
Chart barchart = BarChart(400, 300);
Series series1 = new Series("Series1");
series1.ChartArea = "ca1";
series1.ChartType = SeriesChartType.Column;
series1.IsValueShownAsLabel = true;
series1.Font = new Font("Verdana", 9f, FontStyle.Regular);
barchart.Series.Add(series1);
// Set chart data source
barchart.DataSource = stats;
// Set series members names for the X and Y values
barchart.Series["Series1"].XValueMember = "FriendlyDate";
barchart.Series["Series1"].YValueMembers = "NumRecords";
// Data bind to the selected data source
barchart.DataBind();
MemoryStream ms = new MemoryStream();
barchart.SaveImage(ms, ChartImageFormat.Png);
ms.Seek(0, SeekOrigin.Begin);
return new FileStreamResult(ms, "image/png");
}
图像以不吸引人的方式呈现:
丑陋的 http://www.imagechicken.com/uploads/1253830647005451400.png
问题:如何以编程方式设置字体:
- X 和 Y 轴标签 - 即 Y 上的 0 到 35,以及 X 上的日期
- 数据 - 即 12、0、0、3、6?