Я создаю рубин на приложении rails, чтобы показать стоимость акций для некоторых компаний в некоторый период времени. Я использую следующие камни: chartkick
, groupdate
и stock_quote
Графики Chartkick и groupdate показывают только одну точку на графике, график должен быть несколько строк
Мои Shema.db:
create_table "companies", force: :cascade do |t|
t.string "symbol"
t.datetime "current_date"
t.float "value"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
Заливка базы данных с seeds.rb:
Company.delete_all
d1 = Date.new(2014, 9, 1)
d2 = Date.new(2015, 9, 1)
stocks = StockQuote::Stock.history("aapl", d1, d2)
stocks.each do |stock|
company = Company.new
company.symbol = stock.Symbol.to_s
company.current_date = stock.Date
company.value = stock.Volume
company.save
end
stocks = StockQuote::Stock.history("tsla", d1, d2)
stocks.each do |stock|
company = Company.new
company.symbol = stock.Symbol.to_s
company.current_date = stock.Date
company.value = stock.Volume
company.save
end
stocks = StockQuote::Stock.history("yhoo", d1, d2)
stocks.each do |stock|
company = Company.new
company.symbol = stock.Symbol.to_s
company.current_date = stock.Date
company.value = stock.Volume
company.save
end
В контроллере:
def show
@company = Company.all
end
В show.html.erb я ставлю код от http://ankane.github.io/chartkick/:
<div class="row">
<div class="col-xs-12">
<h3>Values By Day 2 years by companies</h3>
<%= line_chart @company.group(:symbol).group_by_day(:current_date, format: "%B %d, %Y").count, discrete: true %>
</div>
</div>
График должен быть несколько строк, и есть только ONE точку на графике:
Что я должен сделать, изменить, добавить ???
API был стабильным в течение некоторого времени, поэтому документы должны быть в курсе :) – buren