The command draws a pie chart. By specifying the attributes assigned to x axis and y axis, users can create 1 dimensional or 2 dimensional pie matrix. The output of the graph is saved as HTML file which can be displayed in popular browsers.
The input data in CSV format is shown in Table 2.3. The fields that construct the pie chart can be specified at f= parameter. The attributes assigned to x-axis and y-axis can be specified in k= parameter. When one field is specified at k= parameter, one-dimensional pie chart matrix is created, if two fields are specified at k= parameter, two-dimensional pie chart matrix is created. When k= parameter is not specified, one pie chart is created.
The pie chart is created with the JavaScript library D3.js (Data-Driven Documents). Please refer to the official website of D3.js (http://d3js.org/) for more details. Note that Nysol/mcmd library is required for this command.
Pref |
Age |
Population |
Nara |
10 |
310504 |
Nara |
20 |
552339 |
Nara |
30 |
259034 |
Nara |
40 |
450818 |
Nara |
50 |
1231572 |
Nara |
60 |
1215966 |
Nara |
70 |
641667 |
Hokkaido |
10 |
310504 |
Hokkaido |
20 |
252339 |
Hokkaido |
30 |
859034 |
Hokkaido |
40 |
150818 |
Hokkaido |
50 |
9231572 |
Hokkaido |
60 |
4215966 |
Hokkaido |
70 |
341667 |
mpie.rb [i=] f= v= [o=] [k=] [title=] [pr=] [cc=] [--help]
i= Input data file name (CSV format) f= Specify the field name of component. Null data is ignored. v= Specify the field name of component ratio (item that determines the arc length of the pie chart). Data is treated as zero if it consists of null value. Values started with 0 is ignored. Values except numeric characters returns error. o= Output file name (HTML file) k= Specify two or less field names assigned to x-axis and y-axis. Create one pie chart when this parameter is not specified. Create a one-dimensional pie chart when one field is specified, create two-dimensional pie chart when two fields are specified. title= Specify the title of the graph pr= Specify the radius of the pie chart (default is 160). cc= Specify the maximum number of pie charts to be displayed in 1 row (default is 5). Specify for one-dimension pie chart matrix. --help Show help
Noted that in mpie.rb command, the fields specified in f= parameter and k= parameter do not have automatic sorting function. It is necessary to sort the data prior to this command as needed.
Using the data dat1.csv, set Age as the unit of composition, draw a one dimensional pie chart showing the population. The output of the pie chart can be viewed in the web browser. Note that in the pie chart, when you place the mouse cursor over the bar chart, details of the unit of composition is shown in a pop-up box. The graph can also be moved by dragging the mouse, and the size of the graph can be scaled by scrolling the mouse.
$ more dat1.csv
Age,Population
10,310504
20,552339
30,259034.5555
40,0450818
50,1231572
60,1215966
70,641667
$ mpie.rb i=dat1.csv v=Population f=Age o=result1.html
#END# /usr/bin/mpie.rb i=dat1.csv v=Population f=Age o=result1.html
$ head result1.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
body {
font: 10px sans-serif;
}
Using the data dat2.csv, set Age as the unit of composition, draw the pie chart showing the population by age. Specify Pref at k= parameter, which is designated on the x-axis as a one-dimensional pie chart. Specify the title of the graph at title= parameter.
$ more dat2.csv
Pref,Age,Population
Nara,10,310504
Nara,20,552339
Nara,30,259034
Nara,40,450818
Nara,50,1231572
Nara,60,1215966
Nara,70,641667
Hokkaido,10,310504
Hokkaido,20,252339
Hokkaido,30,859034
Hokkaido,40,150818
Hokkaido,50,9231572
Hokkaido,60,4215966
Hokkaido,70,341667
$ mpie.rb i=dat2.csv k=Pref v=Population f=Age o=result2.html title='Population of Nara and
Hokkaido by Age Group'
#END# /usr/bin/mpie.rb i=dat2.csv k=Pref v=Population f=Age o=result2.html title=Population of Nara and Hokkaido by Age Group
$ head result2.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
body {
font: 10px sans-serif;
}
Using the data dat3.csv, set ThemePark as the unit of composition, draw the pie chart showing the theme parks by Number field, and specify the radius at 100 at the pr= parameter. Specify Gender and Age at k= parameter, which designates Gender on the x-axis, and Age on y-axis.
$ more dat3.csv
Gender,Age,ThemePark,Number
Male,30,Disney,100
Male,30,UFJ,59
Male,30,Umeyashiki,180
Male,40,Disney,200
Male,40,UFJ,3
Male,40,Umeyashiki,10
Male,50,Disney,110
Male,50,UFJ,40
Female,30,Umeyashiki,100
Female,30,Disney,80
Female,30,UFJ,200
Female,40,Disney,90
Female,40,UFJ,80
Female,40,Umeyashiki,120
Female,50,Disney,99
Female,50,UFJ,80
Female,50,Umeyashiki,110
$ mpie.rb i=dat3.csv k=Gender,Age v=Number f=ThemePark o=result3.html
#END# /usr/bin/mpie.rb i=dat3.csv k=Gender,Age v=Number f=ThemePark o=result3.html
$ head result3.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
body {
font: 10px sans-serif;
}