2016-11-15 12 views
1

基本的な.net MVC 5アプリケーションを作成しました。System.Web.Helpersを使用してwww.asp.net HEREの情報に基づいて縦棒グラフを生成しています。MVC5 Chartの列の先頭に値を追加するにはどうすればよいですか?

ページ上の例には、フィールドの実際の値を示すラベルが列の一番上に表示されています(申し訳ありませんが、写真をアップロードしようとしましたが、画像を埋め込むのに十分な

以下のコードは、ブラウザでグラフを作成していますが、例のようにバーの上部に実際の値を追加する方法が見つからないようです。

X軸とY軸の値がLINQクエリによって設定されています。

私は列の上に実際の値を除いて、私たちに必要なものを私に与えて生成した結果...

は、チャートを作成するこの方法を使用することも可能ですか?もしそうなら、私は何が欠けていますか?

ビュー

@{ 
    ViewBag.Title = "Index"; 
} 

<h2>Index</h2> 

<div> 
    <img src="@Url.Action("ChartColumn")" alt="theChart" /> 

</div> 

コントローラ:独自のカスタムグラフのテーマを提供する必要があることを行うためには

public ActionResult ChartColumn() 
    { 
     var xValue = new ArrayList(); 
     var yValue = new ArrayList(); 

     var results = _context.SurveyResponses.DistinctBy(m => m.Q1).ToList(); 
     results.ToList().ForEach(rs => xValue.Add(rs.Q1)); 
     results.ToList().ForEach(rs => yValue.Add(rs.Q1.Length)); 


     new System.Web.Helpers.Chart(width: 800, height: 400, theme: ChartTheme.Blue) 
      .AddTitle("Answers") 
      .AddSeries(chartType: "Column", xValue: xValue, yValues: yValue) 
      .Write("png"); 



     return null; 
    } 

答えて

1

。具体的には、次のサンプルのように、IsValueShownAsLabel="true"します

var myChart = new Chart(width: 600, height: 400, themePath: "MyTheme2.xml") 
      .AddTitle("Product Chart") 
      .AddSeries(
      name: "Products", 
      xValue: data, xField: "productname", 
      yValues: data, yFields: "quantity") 
      .Save("~/Images/Chart01.png", "png"); 

MyTheme2.xml:

<?xml version="1.0" encoding="utf-8" ?> 
<Chart> 
    <ChartAreas> 
    <ChartArea Name="Default"> 
     <AxisX> 
     <MajorGrid Enabled="false"></MajorGrid> 
     </AxisX> 
    </ChartArea> 
    </ChartAreas> 
    <Series> 
    <Series Name="Products" IsValueShownAsLabel="true"></Series> 
    </Series> 
</Chart> 

enter image description here

+0

パーフェクト....私はそれは私が「方法かもしれないと思いましたdはこれをしなければならない。あなたの例を見て成功へと導きました。ありがとう! – bobbyK12

+0

大歓迎です!投票が決して誰にも傷つけない... :) – jsanalytics

関連する問題