[RUBY] [Rails] Comment créer un graphique à l'aide de lazy_high_charts

Cible

** Créez un graphique qui montre la transition d'inscription mensuelle des livres sur une base quotidienne. ** ** ezgif.com-video-to-gif.gif

Environnement de développement

・ Rubis: 2.5.7 Rails: 5.2.4 ・ Vagrant: 2.2.7 -VirtualBox: 6.1 ・ Système d'exploitation: macOS Catalina

supposition

Ce qui suit a été mis en œuvre.

Présentation minceIntroduction de Bootstrap 3Introduction de Font Awesome

la mise en oeuvre

1. Présentez Gem

Gemfile


#Postscript
gem 'lazy_high_charts'

Terminal


$ bundle

2. Editez ʻapplication.js`

application.js


//= require rails-ujs
//= require activestorage
//= require turbolinks
//= require highcharts/highcharts //Postscript
//= require highcharts/highcharts-more //Postscript
//= require_tree .

3. Modifiez le contrôleur

books_controller.rb


def index
  @book = Book.new
  @books = Book.all
  #Postscript
  days = (Date.today.beginning_of_month..Date.today).to_a
  books = days.map { |item| Book.where(created_at: item.beginning_of_day..item.end_of_day).count }
  @graph = LazyHighCharts::HighChart.new('graph') do |f|
    f.title(text: 'Transition d'inscription mensuelle')
    f.xAxis(categories: days)
    f.series(name: 'Numéro d'enregistrement', data: books)
  end
end

(1) Obtenez la date du 1er de ce mois à aujourd'hui et attribuez-la à la variable.

days = (Date.today.beginning_of_month..Date.today).to_a

(2) Obtenir le nombre de livres créés à la date obtenue en (1) et les affecter à la variable.

books = days.map { |item| Book.where(created_at: item.beginning_of_day..item.end_of_day).count }

③ Créer un graphique

@graph = LazyHighCharts::HighChart.new('graph') do |f|
  f.title(text: 'Transition d'inscription mensuelle') #Titre
  f.xAxis(categories: days) #Axe horizontal
  f.series(name: 'Numéro d'enregistrement', data: books) #Axe vertical
end

4. Modifier la vue

slim:books/index.html.slim


/Postscript
= high_chart('sample', @graph)

Recommended Posts

[Rails] Comment créer un graphique à l'aide de lazy_high_charts
[rails] Comment créer un modèle partiel
[Rails 6] Comment créer un écran de saisie de formulaire dynamique à l'aide de cocoon
Comment créer facilement un pull-down avec des rails
[Rails] Comment créer un bouton de partage Twitter
Comment créer une méthode
Comment créer une requête à l'aide de variables dans GraphQL [Utilisation de Ruby on Rails]
Préparation à la création de l'application Rails
Comment afficher des graphiques dans Ruby on Rails (LazyHighChart)
Comment exécuter un contrat avec web3j
Comment trier une liste à l'aide du comparateur
[Rails] Comment télécharger des images à l'aide de Carrierwave
Comment insérer une vidéo dans Rails
Comment créer un référentiel Maven pour 2020
[Swift5] Comment créer un écran de démarrage
Pour implémenter la publication d'images à l'aide de rails
Comment créer un fichier jar et un fichier war à l'aide de la commande jar
Rails: comment bien écrire une tâche de râteau
[Rails] Comment écrire lors de la création d'une sous-requête
Comment écrire des rails
[Rails] rails nouveau pour créer une base de données avec PostgreSQL
Comment supprimer un contrôleur, etc. à l'aide d'une commande
[Ethereum] Comment exécuter un contrat en utilisant web3j-Part 2-
Comment créer des pages pour le tableau "kaminari"
Comment créer une classe qui hérite des informations de classe
Comment créer un thème dans Liferay 7 / DXP
Comment désinstaller Rails
[Docker] Comment créer un environnement virtuel pour les applications Rails et Nuxt.js
[Rails] Comment télécharger plusieurs images à l'aide de Carrierwave
[1st] Comment créer un projet de framework Spring-MVC
Comment implémenter une fonctionnalité similaire dans Rails
Comment créer docker-compose
Comment générer une clé primaire à l'aide de @GeneratedValue
Rails6.0 ~ Comment créer un environnement de développement respectueux de l'environnement
Comment créer des données de catégorie hiérarchique à l'aide de l'ascendance
[Rails] Comment créer une table, ajouter une colonne et changer le type de colonne
Un mémo pour créer un formulaire simple en utilisant uniquement HTML et CSS dans Rails 6
Comment créer un formulaire Excel à l'aide d'un fichier modèle avec Spring MVC
[Introduction] Créer une application Ruby on Rails
Comment créer un environnement Java en seulement 3 secondes
Comment implémenter une fonctionnalité intéressante dans Ajax avec Rails
Comment supprimer un objet new_record construit avec Rails
Comment créer une URL JDBC (Oracle Database, Thin)
Comment créer un projet Spring Boot dans IntelliJ
[Spring Boot] Comment créer un projet (pour les débutants)
Comment générer manuellement un JWT avec Knock in Rails
Un mémorandum lors de la tentative de création d'une interface graphique à l'aide de JavaFX
Comment supprimer des éléments d'adaptateur personnalisés à l'aide d'un modèle personnalisé
Comment créer un URI de données (base64) en Java
[Comment insérer une vidéo dans un hameau avec Rails]
Comment écrire une recherche de comparaison de dates dans Rails
Comment convertir A en A et A en A en utilisant le produit logique et la somme en Java
[Rails 6] Comment définir une image d'arrière-plan dans Rails [CSS]
[Rails] Créez un plan de site à l'aide de sitemap_generator et déployez-le dans GAE