🧚 Ascolta! Beekeeper Studio è una GUI per database veloce, moderna e open source Scarica
10 luglio 2024 Di Matthew Rathbone

Assicurati di avere Ruby on Rails installato sul tuo sistema. Per questo tutorial dovrai anche aggiungere le gem Chartkick e Groupdate al tuo Gemfile.

#Gemfile
gem 'chartkick'
gem 'groupdate'

Poi esegui il comando bundle install per installare le gem.

bundle install

Se non hai ancora un progetto Rails, puoi crearne uno con il seguente comando per Rails 7:

rails new chart_app -d postgresql (Rails 7 uses Importmap by default)

Nota: sostituisci postgresql con mysql o sqlite3 in base al database che preferisci.

Configurare Chartkick con Importmap

In config/importmap.rb, aggiungi:

pin "chartkick", to: "chartkick.js"
pin "Chart.bundle", to: "Chart.bundle.js"

E in app/javascript/application.js, aggiungi:

import "chartkick"
import "Chart.bundle"

Per esbuild, Webpacker o altri bundler JS, consulta la documentazione di Chartkick.

Creare un grafico con Chartkick e Groupdate

Preparazione del modello e dei dati:

Supponiamo che tu abbia un modello User con un timestamp created_at. Creeremo un grafico del numero di utenti creati ogni giorno.

class UsersController < ApplicationController
  def index
    @users_by_day = User.group_by_day(:created_at).count
  end
end

User.group_by_day(:created_at).count genera una semplice query SQL che conta il numero di utenti creati al giorno.

Creare la vista Index:

Nella tua vista, usa l'helper line_chart fornito da Chartkick per creare il grafico:

<!-- app/views/users/index.html.erb -->
<h1>Users Registered Over Time</h1>
<%= line_chart @users_by_day %>

Quando avvii il server con rails s e apri la pagina, dovresti vedere un grafico a linee che mostra il numero di utenti creati ogni giorno.

Migliorare i tuoi grafici

Chartkick permette di personalizzare i grafici con varie opzioni, come colori, messaggi e altro. Ecco un esempio per personalizzare il grafico precedente:

<%= line_chart @users_by_day, colors: ["#b00"], message: "Loading...", library: { backgroundColor: "transparent" } %>

Creare diversi tipi di grafici

Chartkick supporta vari tipi di grafici. Qui sotto trovi esempi di grafici diversi che puoi implementare.

Grafico a torta

Per creare un grafico a torta che mostri la distribuzione dei ruoli utente nella tua applicazione:

Ruby:

@user_roles = User.group(:role).count

erb:

<%= pie_chart @user_roles %>

Grafico a colonne

Per visualizzare il numero di post creati dagli utenti ogni mese:

Ruby:

@posts_by_month = Post.group_by_month(:created_at).count

erb:

<%= column_chart @posts_by_month %>

Grafico ad area

Per creare un grafico ad area, simile al grafico a linee ma riempito:

erb:

<%= area_chart @users_by_day %>

Conclusione

Creare grafici nelle tue applicazioni Ruby on Rails con Chartkick ti permette di realizzare grafici dinamici in modo semplice e veloce, con poche righe di codice. Integrando questi grafici nella tua applicazione, puoi offrire visualizzazioni che aiutano a ricavare informazioni utili dai dati e a migliorare il processo decisionale degli utenti.

Potrebbero interessarti anche questi articoli:

Beekeeper Studio è una GUI per database gratuita & open source

Il miglior strumento per query & editor SQL che abbia mai usato. Offre tutto ciò che mi serve per gestire il mio database. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio è veloce, intuitivo e facile da usare. Beekeeper supporta tantissimi database e funziona alla grande su Windows, Mac e Linux.

La versione Linux di Beekeeper è completa al 100%, senza tagli e senza compromessi sulle funzionalità.

Cosa dicono gli utenti di Beekeeper Studio

★★★★★
"Beekeeper Studio ha sostituito completamente il mio vecchio flusso di lavoro SQL. È veloce, intuitivo e rende di nuovo piacevole lavorare con i database."
— Alex K., Database Developer
★★★★★
"Ho provato tante GUI per database, ma Beekeeper trova l'equilibrio perfetto tra funzionalità e semplicità. Funziona e basta."
— Sarah M., Full Stack Engineer

Pronto a migliorare il tuo flusso di lavoro SQL?

download Scarica gratis