Rails アプリケーションでオープン フラッシュ チャート 2 (プラグイン) を使用しています。x 軸の範囲を除いて、すべてが滑らかに見えます。特定の使用量に対する携帯電話プランのコストを表す線を作成しています。8 つの値を生成しています。
私が遭遇している問題は、Ruby on Rails の X 軸の範囲をデータに固有のものに設定する方法です。現在表示されている値は、私が与えている配列のインデックスです。値にハッシュを渡そうとすると、グラフはまったく読み込まれません。
したがって、基本的には、行のデータを適切に設定して正しく表示する方法を取得するための助けが必要です。現在、すべての値を配列のインデックスの x 値を表すかのように扱っています。
これは、私が言っていることよりも適切な説明である可能性があるスクリーン ショットです。は正しくありません。100、200、300、400、500、600、700 のようになります。
コード:
y = YAxis.new
y.set_range(0,100, 20)
x_legend = XLegend.new("Usage")
x_legend.set_style('{font-size: 20px; color: #778877}')
y_legend = YLegend.new("Cost")
y_legend.set_style('{font-size: 20px; color: #770077}')
chart =OpenFlashChart.new
chart.set_x_legend(x_legend)
chart.set_y_legend(y_legend)
chart.y_axis = y
line = Line.new
line.text = plan.name
line.width = 2
line.color = '#006633'
line.dot_size = 2
line.values = generate_data(plan)
chart.add_element(line)
def generate_data(plan)
values = []
#generate below threshold numbers
5.times do |x|
usage = plan.usage / 5 * x
cost = plan.cost
values << cost
end
#generate above threshold numbers
3.times do |x|
usage = plan.usage + ((plan.usage / 5) * x)
cost = plan.cost + (usage * plan.overage)
values << cost
end
return values
end
また、私が抱えているもう1つの問題は、xを指定できるようにする必要があるのに対し、私が与える値はxが配列内の要素の位置であり、yが値であると見なされるため、いくつかのポイントを追加できないことです。および各ポイントの y 値なので、一連の null 値で配列をバッファリングする必要はありません