2016-12-15 102 views
1

在一个asp.net mvc应用程序中,我需要创建一个简单的折线图,所以我尝试了图表帮助程序。该图表是使用两个列表创建的,x轴应该显示日期时间,并且y轴应该每次显示一个值。现在,使用下面的代码可以正常工作。 “listOfDateTimes”由一系列DateTime组成。ASP.Net中的图表助手显示日期时间

var chart = new Chart(width: 1000, height: 300, theme: ChartTheme.Green) 
     .AddSeries(
        chartType: "line", 
        xValue: listOfDateTimes, 
        yValues: listOfValues) 
        .GetBytes("png"); 

的问题是,在x轴下面的日期时间显示为“MM/DD/YYYY”,但我也需要显示小时和分钟。我无法弄清楚如何使用图表帮助器来解决这个问题。

回答

2

当使用图表助手必须提供自己的主题文件,以自定义图表:

var myChart = new Chart(width: 800, height: 400, themePath: "MyTheme3.xml") 
       .AddSeries(
          chartType: "line", 
          xValue: new[] { DateTime.Now, 
           DateTime.Now.AddSeconds(1), 
           DateTime.Now.AddSeconds(2), 
           DateTime.Now.AddSeconds(3), 
           DateTime.Now.AddSeconds(4) }, 
          yValues: new[] { 40, 100, 60, 80, 20 }) 

使用此样本主题定制您的X轴描述:

MyTheme3.xml:

<?xml version="1.0" encoding="utf-8" ?> 
<Chart> 
    <ChartAreas> 
    <ChartArea Name="Default"> 
     <AxisX> 
     <LabelStyle Format="MM/dd/yyyy hh:mm:ss"></LabelStyle> 
     </AxisX> 
    </ChartArea> 
    </ChartAreas> 
    <Series> 
    <Series Name="Default"></Series> 
    </Series> 
</Chart> 

enter image description here


编辑:如果要通过属性定期配置图表,那么应该使用System.Web.UI.DataVisualization.Charting名称空间。但是如果你想使用System.Web.Helpers命名空间,那么你必须像前面解释的那样做。

+0

谢谢!这解决了我的问题。 对于未来的访问者:下面是一些例子,给你一些你可以在你的xml上自定义的提示。 https://dzone.com/articles/chart-helper-aspnet-mvc-3 – Andreas