1

我是新手,现在我正在尝试使用 MVC 显示图表。

显示图表有两种可能性:

  1. System.Web.UI.DataVisualization.Charting.Chart
  2. System.Web.Helpers.Chart

这两种解决方案有什么不同?以及之间的优势/劣势是什么?

目前,我尝试以下代码:

控制器:

[HttpPost]
    public ActionResult RenderRainfallChart()
    {
        var incomeList = Income.GetList();
        List<string> xValue = new List<string>();
        List<decimal> yValue = new List<decimal>();

        foreach (var item in incomeList)
        {
            xValues.Add(item.Name);
            yValues.Add(item.Amount);
        }

        var key = new System.Web.Helpers.Chart(width: 600, height: 400)
            .AddSeries(
                legend: "IncomeLIst",
                xValue: xValue,
                yValues: yValues)
            .Write();}

选择按钮后,图表将显示在新的浏览器页面上:.../Company/RenderRainfallChart

是否可以在索引站点的 div 容器中显示图表?

4

2 回答 2

0

对于非交互式图表,您可以制作一个 GET 来获取图表的图像,然后在您的网页中简单地放置一个<img>指向该 URL 的那个。

您可以使用以下方式获取图表图像的字节:

byte[] GetBytes(Chart chart, ChartImageFormat imageFormat)
{
    using (var stream = new MemoryStream())
    {
        chart.SaveImage(stream, imageFormat);
        return stream.ToArray();
    }
}
于 2013-05-07T20:48:40.390 回答
0

谷歌图表 API 可能吗?它使用 JavaScript,因此您必须在页面中写入值或使用 AJAX 检索它们。

于 2012-08-07T08:12:44.340 回答