Student-solutions/Leif

From Earlham CS Department
Jump to navigation Jump to search

GNUPlot Visualization

Datasets

Code

# GNUPlot Visualization - Mapping the Population of India
# Leif DeJong
# F/K Fall 2012

# Functions
WordSize(size) = 0.25*sqrt(sqrt(column(size)))
Place(String,Size) = sprintf("{/=%d %s}", WordSize(Size), stringcolumn(String))

# Variables
mapColor="#138900"
bgColor="#4282d3"

# Export Settings
## PDF
set terminal postscript enhanced color
set output '| ps2pdf - plot.pdf'

## SVG
#set terminal svg
#set output 'india-population.svg'

# Reset
unset xtics
unset ytics
unset key
unset log
unset label

# Pre Plot Setup
set termoption enhanced
set object 1 rectangle from screen 0,0 to screen 1,1 fillcolor rgb bgColor behind
set border 0
set size square
set datafile separator ","

# Plot
plot 'india.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'middle-andaman.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'little-anadman.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'great-nicobar.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'amini.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'andrott.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'other.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'other2.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'other3.csv' using 2:1 w filledcurves lc rgb mapColor
replot 'india-information.csv' using 29:28:($5 < 5000 ? "" : Place(1,5)) with labels
reset

Sources

  1. GeoCommons - [1]
  2. Kevin McCurley - [2]