2012-02-07 7 views
1

3つの系列、2つの列を持つチャートを作成していますが、平均を示す線が必要です。グラフマルチタイプとセカンダリY軸

私はトレンドラインを見つけましたが、現時点ではトレンドラインを見たいときに私のチャートにシリーズ列とトレンドラインが表示されています。コードは次のとおりです。

// Add a chart for the country. i.e. show the 
var chart = worksheet.Drawings.AddChart(countryName + "Click through report", eChartType.ColumnClustered); 

// Set the size of the chart 
chart.SetSize(1150, 540); 

//Set the series value for each column - impressions 
int chartrange = cumCtrj + 27; 
var series1 = chart.Series.Add("=" + countryName + "!$B$29:$B$" + chartrange, "=" + countryName + "!$A$29:$A$" + chartrange); 
series1.Header = "Dealer Lists Displayed"; 

// column - Clicks 
var series2 = chart.Series.Add("=" + countryName + "!$C$29:$C$" + chartrange, "=" + countryName + "!$A$29:$A$" + chartrange); 
series2.Header = "Clicks To Dealer"; 

var series3 = chart.Series.Add("=" + countryName + "!$D$29:$D$" + chartrange, "=" + countryName + "!$A$29:$A$" + chartrange); 
series3.Header = "Click Through Rate"; 
series3.TrendLines.Add(eTrendLine.Linear); 

列なしでトレンドラインを使用するにはどうすればよいですか?

EDIT:実際には値が実際にテーブルにあるため(つまり、クリック率はクリック数/表示回数* 100でパーセンテージ値)、必要なトレンドラインであることは間違いありません。これは他の2つの列を通る線として示されている。

以下は、私が作業しているテーブルの例です。

Row Impressions Clicks CTR 

40 391 4 1.0210593 
41 986 35 3.5491558 
42 104 37 3.534818 
43 236 38 16.064257 
44 579 10 1.72592337 

EDIT 2:

// TODO click through rate as a line. 
          var chartType2 = chart.PlotArea.ChartTypes.Add(eChartType.Line); 
          var series3 = chartType2.Series.Add("=" + countryName + "!$D$29:$D$" + chartrange, "=" + countryName + "!$A$29:$A$" + chartrange); 
          series3.Header = "Click Through Rate"; 

私がする必要がある最後の事: 私は私のチャートにライン(その2つ目のグラフの種類を追加する方法を発見した次のコードを参照してください。にやっていることは、二次Y軸を追加している - それを持つ任意の助けいただければ幸い

感謝を

答えて

0

二次を追加するには!。軸以下のニーズが行われる:

// column - Clicks 
          var chartType3 = chart.PlotArea.ChartTypes.Add(eChartType.ColumnClustered); 
          var series2 = chartType3.Series.Add("=" + countryName + "!$C$29:$C$" + chartrange, "=" + countryName + "!$A$29:$A$" + chartrange); 
          series2.Header = "Clicks To Dealer"; 
          chartType3.UseSecondaryAxis = true; 

あなたが使用できるように、私は=真chartType3.UseSecondaryAxis最初のグラフと同じである場合でも、新しいチャートタイプ(charttype3)を作成することが重要である

関連する問題