Laravel 9 dynamic google pie chart; In this tutorial, we will learn how to implement google pie chart in laravel 9 app.
Google Charts provides a perfect way to visualize data on website. And also can display dynamic data day-wise, month-wise, year-wise on google pie chart in laravel.
Laravel 9 Google Pie Chart Tutorial
Follow the following steps to make a google pie chart in laravel 9 apps:
- Step 1: Install Laravel 9 App
- Step 2: Connecting App to Database
- Step 3: Make Routes
- Step 4: Create Controller
- Step 5: Create Blade File
- Step 6: Add Google Chart Library
- Step 7: Run Development Server
Step 1: Install Laravel 9 App
In this step, we need to run the below command to download or install a fresh laravel setup into machine for creating a laravel google pie chart app. So open terminal and run the following command:
composer create-project --prefer-dist laravel/laravel blog
Step 2: Connecting App to Database
In this step, we need to navigate laravel dynamic google pie chart app project root directory. And open .env file. Then add database detail like below:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=Enter_Your_Database_Name DB_USERNAME=Enter_Your_Database_Username DB_PASSWORD=Enter_Your_Database_Password
Step 3: Make Routes
In this step, navigate to the routes folder and open the web.php file. Then add the following route into web.php file:
use App\Http\Controllers\GooglePieController; Route::get('laravel-google-pie-chart', [GooglePieController::class, 'index']);
Step 4: Create Controller
In this step, open terminal again and run the following command to create a controller named GooglePieController.php:
php artisan make:controller GooglePieController
Then Navigate to app/HTTP/controller folder and open GooglePieController.php. And add the following code into GooglePieController.php file:
<?php namespace App\Http\Controllers; use App\Models\User; use Illuminate\Http\Request; Use DB; use Carbon\Carbon; class GooglePieController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $data['pieChart'] = User::select(\DB::raw("COUNT(*) as count"), \DB::raw("MONTHNAME(created_at) as month_name")) ->whereYear('created_at', date('Y')) ->groupBy('month_name') ->orderBy('count') ->get(); } }
Step 5: Create Blade File
In this step, navigate to /resources/views/ folder and create one blade view file name google-pie-chart.blade.php. And add the following code into google-pie-chart.blade.php file:
<!doctype html> <html lang="en"> <head> <title>Laravel 9 Google Pie Chart - Tutsmake.com</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"> </head> <body> <div class="container p-5"> <h5>Laravel 9 Google Pie Chart | Tutsmake.com</h5> <div id="piechart" style="width: 900px; height: 500px;"></div> </div> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable([ ['Month Name', 'Registered User Count'], @php foreach($pieChart as $d) { echo "['".$d->month_name."', ".$d->count."],"; } @endphp ]); var options = { title: 'Users Detail', is3D: false, }; var chart = new google.visualization.PieChart(document.getElementById('piechart')); chart.draw(data, options); } </script> </body> </html>
is3D
is false
by default, if want to make it 3d. Can set it to true
.
Step 6: Add Google Chart Library
In this step, need to add the following google chart library in blade view file:
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
Step 7: Run Development Server
Finally, we need to run the following PHP artisan serve command to start laravel dynamic google pie chart app:
php artisan serve If want to run the project diffrent port so use this below command php artisan serve --port=8080
Now, we are ready to run laravel dynamic google pie chart app. So open browser and hit the following URL into browser:
http://localhost:8000/laravel-google-pie-chart
Conclusion
Laravel google pie chart tutorial from scratch, we have learned how to implement dynamic google pie chart in laravel app.