2017-01-10 18 views
0

Chartkick gemとGoogle chartを使って線形関数(y = ax + bのような)を描画しようとしています。Chartkick gemとGoogle chartを使って線形関数を描く

「a」と「b」がパラメータとして与えられる。

問題は、傾き 'a'と 'b'のGoogleグラフを使用して無限折れ線グラフを達成しようとしており、これを適切な方法で実現する方法がわかりません。

2つの点(-b/a、0)と(0、b)を持つ折れ線グラフを描画し、その上にトレンドラインオプションを付けるという解決策を思いつきました。

<!-- y = 0.55x floatify(2,@datas[4][2]) + 1.47 floatify(2,@datas[3][2]) --> 
<%= line_chart [ 
       {name: "targets", 
       data: [ 
        ["#{-(@datas[3][2].to_f/@datas[4][2].to_f).round(2)}",0], 
        [0,"#{@datas[3][2].to_f}"] 
       ] 
       }, 
      ], 
      library: { 
       title: "#{@simplereg.variable_name}", 
       subtitle: "#{@simplereg.data_name}", 
       legend: "right", 
       vAxis: {title: 'average'}, 
       trendlines: { 
        0: { 
         type: 'exponential', 
         visibleInLegend: true 
        } 
       } 
      } 
%> 

しかし、レールは、グーグルチャートのドキュメントとは異なり、トレンドラインのオプションとして '0'値を読み取ることができません。 - >https://developers.google.com/chart/interactive/docs/gallery/trendlines 私はこのコードをどのように修正するのか手がかりがありません。

私は助けてください...私はこのコードを投げて全く別の方法で書いても構いません。

ありがとうございます。

答えて

0

使用

<%= javascript_include_tag "https://www.gstatic.com/charts/loader.js" %> 
 

 

 
<%= line_chart [ 
 
        {name: "targets", 
 
        data: [ 
 
         ["-2/3",0], 
 
         [0,"2"] 
 
        ] 
 
        }, 
 
       ], 
 
       library: { 
 
        title: "ABC", 
 
        subtitle: "XYZ", 
 
        legend: "right", 
 
        vAxis: {title: 'average'}, 
 
        trendlines: { 
 
         "0"=> { 
 
     type: 'exponential', 
 
     visibleInLegend: true 
 
    } 
 
    } 
 
    } 
 
%>

基本的に代わりのsymbo 0以下のようなものは:使用 "0" =>

+0

はどうもありがとうございました! –

関連する問題