Reputation: 3337
I have a Rails 3.2.14 app where I'm using the chartkick
and groupdate
gem to try to generate some basic charts.
When I load my view I get the error:
Error Loading Chart: No adapter found
Here's what my view code looks like:
index.html.erb
<%= line_chart Call.group_by_week(:created_at).count %>
Here's my application layout including chartkick and yielding chart_js application.html.erb (layout)
<%= javascript_include_tag "application", "chartkick" %>
<%= yield :charts_js %>
Can anyone tell me why I'm getting this error and how to fix it? I'd really like to start using Chartkick to generate some simple charts.
Upvotes: 7
Views: 10966
Reputation: 28860
I had a similar issue as well when I first tried out ChartKick. The error message that I got is Error Loading Chart: No charting libraries found - be sure to include one before your charts
Here's how I fixed it.
I simply added the following line of code below to the application.js file in the assets > javascript folder.
//= require Chart.bundle
//= require chartkick
Save and refresh, that should fix it.
That's all
I hope this helps.
Upvotes: 3
Reputation: 5871
To View: Google Charts In your layout or views, add:
<%= javascript_include_tag "https://www.gstatic.com/charts/loader.js" %>
link: https://chartkick.com/#google-charts
Upvotes: 6
Reputation: 13481
If above doesn't solve for someone, one additional possibility is a mixed content
issue.
You can check this by opening the JS console.
Mixed Content: The page at 'https://site.io/' was loaded over HTTPS, but requested an insecure script 'http://www.google.com/jsapi'. This request has been blocked; the content must be served over HTTPS.
Solution:
Just change this
http://www.google.com/jsapi
To this (add s
to http
)
https://www.google.com/jsapi
Upvotes: 1
Reputation: 23
Another cause of error can be the protocol you use in the javascript_include_tag.
For instance you will get the error Error Loading Chart: No adapter found
if you for instance use protocol https for your website: https://www.example.com
and http in the javascript_include_tag in your code:
<%= javascript_include_tag "http://www.google.com/jsapi", "chartkick" %>
Upvotes: 2
Reputation: 6223
Probably you missed loading Google Charts or Highcharts (the adapters).
Try adding this line <%= javascript_include_tag "//www.google.com/jsapi" %>
before <%= javascript_include_tag "application", "chartkick" %>
. Also check the Installation section in gem's home page (scroll down :)).
Upvotes: 17