【问题标题】:ASP .NET MVC Chart Helper Add MarkerASP .NET MVC 图表助手添加标记
【发布时间】:2012-06-25 21:06:29
【问题描述】:

我有一个柱形图(每个区域的总分)。我想在列的顶部显示实际点。我相信这叫做标记? 这是我的代码:

var myChart = new Chart(width: 800, height: 500, theme: myTheme)
.AddTitle("Region Report")
.SetXAxis("Region")
.SetYAxis("Total Points")  
.AddSeries("RegionReport", chartType: "Column",
xValue: Model, xField: "Region",
yValues: Model, yFields: "TotalPoints")
.Write();

【问题讨论】:

    标签: asp.net-mvc helper asp.net-charts


    【解决方案1】:

    如果您想显示列值(或任何数据值)的标记顶部,您需要先创建一个系列,然后使用 IsValueShownAsLabel=true 来显示特定系列价值。

    上述控制器函数的编写方式,由于 Chart Helper 不支持,所以无法显示。

    这里有一个示例,说明如果您使用 Series,您可以如何做到这一点。将以下函数添加到您的控制器:

        public ActionResult ShowChart()
        {
            Bitmap image = new Bitmap(500, 50);
            Graphics g = Graphics.FromImage(image);
            System.Web.UI.DataVisualization.Charting.Chart myChart = new System.Web.UI.DataVisualization.Charting.Chart();
            myChart.Width = 600;
            myChart.Height = 300;
            myChart.ChartAreas.Add("xSeries").BackColor = System.Drawing.Color.FromArgb(64, System.Drawing.Color.White);
            // create a couple of series  
            myChart.Series.Add("xSeries");
            // add points to xSeries  
            myChart.Series["xSeries"].Points.AddY(83);
            myChart.Series["xSeries"].Points.AddY(49);
            myChart.Series["xSeries"].Points.AddY(94);
            myChart.Series["xSeries"].Points.AddY(65);
            // add points to ySeries  
            myChart.Series["xSeries"].IsValueShownAsLabel = true;
            myChart.BackColor = Color.Transparent;
            MemoryStream imageStream = new MemoryStream();
            myChart.SaveImage(imageStream, ChartImageFormat.Png);
            myChart.TextAntiAliasingQuality = TextAntiAliasingQuality.SystemDefault;
            Response.ContentType = "image/png";
            imageStream.WriteTo(Response.OutputStream);
            g.Dispose();
            image.Dispose();
            return null;
        }
    

    然后在你的视图中如下调用它:

    <img src="@Url.Action("ShowChart")" alt="MyChart" />
    

    【讨论】:

    • System.Web.UI.DataVisualization.Charting.Chart Chart 比 MVC Chart Helper 有更多的功能。由于 MVC 助手的能力有限,这也是我的偏好。
    猜你喜欢
    • 2021-04-22
    • 2019-01-03
    • 2016-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多