0

現在、Rickshaw ウィジェットを使用して Dashing のグラフの x 軸にデータ型を追加しようとしています。

基本的に、Coffeescript ウィジェットの if ステートメントに関連するダッシュボード ファイルでデータ呼び出しを作成したい

coffeescript からのコード (Rickshaw.coffee)

# Define elements for Rickshaw time
time = new Rickshaw.Fixtures.Time
months = time.unit('month')
weeks = time.unit('week')

if @get("weekly-view")
  x_axis = new Rickshaw.Graph.Axis.Time(graph: graph, timeUnit: weeks)

  y_axis = new Rickshaw.Graph.Axis.Y(graph: graph, tickFormat: Rickshaw.Fixtures.Number.formatKMBT)


else if @get("monthly-view")
  x_axis = new Rickshaw.Graph.Axis.Time(graph: graph, timeUnit: months)

  y_axis = new Rickshaw.Graph.Axis.Y(graph: graph, tickFormat: Rickshaw.Fixtures.Number.formatKMBT)

else
  x_axis = new Rickshaw.Graph.Axis.X(graph: graph, tickFormat: Rickshaw.Fixtures.Number.formatKMBT)

  y_axis = new Rickshaw.Graph.Axis.Y(graph: graph, tickFormat: Rickshaw.Fixtures.Number.formatKMBT)

これは、次のように変更を呼び出すダッシュボード ファイルに関連しています。

  <li data-row="1" data-col="1" data-sizex="6" data-sizey="6">
      <div data-id="etvvrb" data-view="Rickshawgraph" data-weekly-view="true"></div>
    </li>    

基本的に、if ステートメントは効果がないようです。if @get('var') == true を有効にするように修正するか、他の同様の試みを試みました。

どんな助けでも大歓迎です!

マット

4

1 に答える 1

0

なんとかそれをクラックしました:

# Define elements for Rickshaw time
time = new Rickshaw.Fixtures.Time
months = time.unit('month')
weeks = time.unit('week')

y_axis = new Rickshaw.Graph.Axis.Y(graph: graph, tickFormat: Rickshaw.Fixtures.Number.formatKMBT)

switch @get('xAxis')
  when "weekly"
    x_axis = new Rickshaw.Graph.Axis.Time(graph: graph, timeUnit: weeks)

  when "monthly"
    x_axis = new Rickshaw.Graph.Axis.Time(graph: graph, timeUnit: months)

  else
    x_axis = new Rickshaw.Graph.Axis.X(graph: graph, tickFormat: Rickshaw.Fixtures.Number.formatKMBT)

と:

<li data-row="1" data-col="1" data-sizex="6" data-sizey="6">
  <div data-id="etvvrb" data-view="Rickshawgraph" data-title="Weekly ETV reach" data-moreinfo="Week commencing" style="background-color:#336699" data-color-scheme="rainbow" data-renderer="line" data-x-axis="weekly"></div>
</li>   

基本的に、'data-x-axis' パラメータは @get('xAxis') として渡す必要があります。あとはswitch要素で自由にやりたい放題。

于 2015-01-16T14:18:14.713 に答える