Hands-On 1
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec
#Write your code here
def test_my_first_plot():
fig=plt.figure(figsize=(8,6))
ax=fig.add_subplot(111)
t=[5,10,15,20,25]
d=[25, 50, 75, 100, 125]
plt.plot(t,d,label='d=5t')
ax.set(title="Time vs Distance Covered",xlabel="time (seconds)", ylabel="distance (meters)",
xlim=(0,30), ylim=(0,130))
plt.legend()
plt.savefig('scatter.png')
plt.show()
test_my_first_plot()
File->New->Terminal
python prog.py
python .testscript.py
Hands-On 2
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec
from matplotlib.testing.decorators import image_comparison
#Write your code here
def test_sine_wave_plot():
fig = plt.figure(figsize=(12,3))
ax = fig.add_subplot(111)
t = np.linspace(.0,2,200)
v = np.sin(2.5*np.pi*t)
xti = np.arange(0,2.2,0.2)
yti = [-1,0,1]
plt.plot(t,v,color="red",label="sin(t)")
ax.set(title="Sine Wave",xlabel="Time (seconds)",ylabel="Voltage (mV)", xlim=(0,2),ylim=(-
1,1),xticks=xti,yticks=yti)
ax.grid(True,linestyle="--")
ax.legend()
plt.savefig("sinewave.png")
test_sine_wave_plot()
def test_multi_curve_plot():
fig = plt.figure(figsize=(12,3))
ax = fig.add_subplot(111)
x = np.linspace(.0,5,20)
y1,y2,y3 = x,x*2,x*3
plt.plot(x,y1,color="red",marker="o",label="y = x")
plt.plot(x,y2,color="green",marker="s",label="y = x**2")
plt. plot(x,y3,color="blue",marker="v",label="y == x**3")
ax.set(title="Linear, Quadratic, & Cubic Equations",xlabel="X",ylabel="f(x)")
ax.legend()
plt.savefig("multicurve.png")
test_multi_curve_plot()
def test_scatter_plot():
fig = plt.figure(figsize=(12,3))
ax = fig.add_subplot(111)
s = [50, 60, 55, 50, 70, 65, 75, 65, 80, 90, 93, 95]
months = list(range(1,13))
plt.scatter(months,s,color="red",edgecolor="black")
ax.set(title="Cars Sold by Company 'X' in 2017",xlabel="Months",ylabel="No. of Cars Sold",
xlim=(0,13),ylim=(20,100),xticks=list(range(1,13,2)))
ax.set_xticklabels(['Jan', 'Mar', 'May', 'Jul', 'Sep', 'Nov'])
plt.savefig("scatter.png")
test_scatter_plot()
File->New->Terminal
python prog.py
python .testscript.py
Hands-On 3
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec
#Write your code here
def test_barplot_of_iris_sepal_length():
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
species = ['setosa', 'versicolor', 'viriginica']
index = [0.2, 1.2, 2.2]
sepal_len = [5.01, 5.94,6.59]
plt.bar(index,sepal_len,width=0.5,color="red",edgecolor="black")
ax.set(title="Mean Sepal Length of Iris Species",xlabel='Species',ylabel='Sepal Length (cm)', xlim =
(0,3),ylim = (0,7))
ax.set_xticks([0.45,1.45,2.45])
ax. set_xticklabels(species)
plt.savefig("bar_iris_sepal.png")
test_barplot_of_iris_sepal_length()
def test_barplot_of_iris_measurements():
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
sepal_len = [5.01, 5.94, 6.59]
sepal_wd = [3.42, 2.77, 2.97]
petal_len = [1.46, 4.26, 5.55]
petal_wd = [0.24, 1.33, 2.03]
species = ['setosa', 'versicolor','viriginica']
species_index1 = [0.7, 1.7, 2.7]
species_index2 = [0.9, 1.9, 2.9]
species_index3 = [1.1, 2.1, 3.1]
species_index4 = [1.3, 2.3, 3.3]
ax.bar(species_index1,sepal_len,color='c',edgecolor='black',width=0.2,label='Sepal Length')
ax.bar(species_index2,sepal_wd,color='m',edgecolor='black',width=0.2,label='Sepal Width')
ax.bar(species_index3,petal_len,color='y',edgecolor='black',width=0.2,label='Petal Length')
ax.bar(species_index4,petal_wd,color='orange',edgecolor ='black',width=0.2,label='Petal Width')
ax.set(title="Mean Measurements of Iris Species",xlabel="Species",ylabel="Iris Measurements
(cm)",xlim=(0.5,3.7),ylim=(0,10),xticks=[1.1,2.1,3.1],xticklabels=species)
ax.legend()
plt.savefig("bar_iris_measure.png")
test_barplot_of_iris_measurements()
def test_hbarplot_of_iris_petal_length():
fig = plt.figure(figsize=(12,5))
ax = fig.add_subplot(111)
species = ['setosa', 'versicolor', 'viriginica']
index = [0.2, 1.2, 2.2]
petal_len = [1.46, 4.26,5.55]
plt.barh(index,petal_len,height=0.5,color="c",edgecolor="black")
ax.set(title="Mean Petal Length of Iris Species",ylabel='Species',xlabel='Petal Length (cm)')
ax.set_yticks([0.45,1.45,2.45])
ax.set_yticklabels(species)
plt.savefig("bar_iris_petal.png")
test_hbarplot_of_iris_petal_length()
File->New->Terminal
python prog.py
python .testscript.py
Hands-On 4
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec
#Write your code here
def test_hist_of_a_sample_normal_distribution():
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
np.random.seed(100)
x1 = 25 + 3.0*np.random.randn(1000)
ax.set(title="Histogram of a Single Dataset", xlabel="X1", ylabel="Bin Count")
plt.hist(x1,bins=30)
plt.savefig("histogram_normal.png")
test_hist_of_a_sample_normal_distribution()
def test_boxplot_of_four_normal_distribution():
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
np.random.seed(100)
x1 = 25 + 3.0*np.random.randn(1000)
x2 = 35 + 5.0*np.random.randn(1000)
x3 = 55 + 10.0*np.random.randn(1000)
x4 = 45 + 3.0*np.random.randn(1000)
x = [x1,x2,x3,x4]
labels = ['X1', 'X2', ' X3', 'X4']
ax.set(title="Box plot of Multiple Datasets", xlabel="Dataset", ylabel="Value")
plt.boxplot(x,labels=labels,notch=True,patch_artist=True,flierprops={'marker': '+'})
plt.savefig("box_distribution.png")
test_boxplot_of_four_normal_distribution()
File->New->Terminal
python prog.py
python .testscript.py
Hands-On 5
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec
#Write your code here
def test_generate_plot_with_style1():
with plt.style.context('ggplot'):
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
sepal_len = [5.01, 5.94, 6.59]
sepal_wd = [3.42, 2.77, 2.97]
petal_len = [1.46, 4.26, 5.55]
petal_wd = [0.24, 1.33, 2.03]
species = ['setosa', 'versicolor', 'viriginica']
species_index1 = [0.7, 1.7, 2.7]
species_index2 = [0.9, 1.9, 2.9]
species_index3 = [1.1, 2.1, 3.1]
species_index4 = [1.3, 2.3, 3.3]
ax.bar(species_index1,sepal_len,width=0.2,label='Sepal Length')
ax.bar(species_index2,sepal_wd,width=0.2,label='Sepal Width')
ax.bar(species_index3,petal_len,width=0.2,label='Petal Length')
ax.bar(species_index4,petal_wd,width=0.2,label='Petal Width')
ax.set(title="Mean Measurements of Iris Species",xlabel="Species",ylabel="Iris Measurements
(cm)",xlim=(0.5,3.7),ylim=(0,10),xticks=[1.1,2.1,3.1],xticklabels=species)
ax.legend()
plt.savefig("plotstyle1.png")
test_generate_plot_with_style1()
def test_generate_plot_with_style2():
with plt.style.context('seaborn-colorblind'):
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
sepal_len = [5.01, 5.94, 6.59]
sepal_wd = [3.42, 2.77, 2.97]
petal_len = [1.46, 4.26, 5.55]
petal_wd = [0.24, 1.33, 2.03]
species = ['setosa', 'versicolor', 'viriginica']
species_index1 = [0.7, 1.7, 2.7]
species_index2 = [0.9, 1.9, 2.9]
species_index3 = [1.1, 2.1, 3.1]
species_index4 = [1.3, 2.3, 3.3]
ax.bar(species_index1,sepal_len,width=0.2,label='Sepal Length')
ax.bar(species_index2,sepal_wd,width=0.2,label='Sepal Width')
ax.bar(species_index3,petal_len,width=0.2,label='Petal Length')
ax.bar(species_index4,petal_wd,width=0.2,label='Petal Width')
ax.set(title="Mean Measurements of Iris Species",xlabel="Species",ylabel="Iris Measurements
(cm)",xlim=(0.5,3.7),ylim=(0,10),xticks=[1.1,2.1,3.1],xticklabels=species)
ax.legend()
plt.savefig("plotstyle2.png")
test_generate_plot_with_style2()
def test_generate_plot_with_style3():
with plt.style.context('grayscale'):
fig = plt.figure(figsize=(8,6))
ax = fig.add_subplot(111)
sepal_len = [5.01, 5.94, 6.59]
sepal_wd = [3.42, 2.77, 2.97]
petal_len = [1.46, 4.26, 5.55]
petal_wd = [0.24, 1.33, 2.03]
species = ['setosa', 'versicolor', 'viriginica']
species_index1 = [0.7, 1.7, 2.7]
species_index2 = [0.9, 1.9, 2.9]
species_index3 = [1.1, 2.1, 3.1]
species_index4 = [1.3, 2.3, 3.3]
ax.bar(species_index1,sepal_len,width=0.2,label='Sepal Length')
ax.bar(species_index2,sepal_wd,width=0.2,label='Sepal Width')
ax.bar(species_index3,petal_len,width=0.2,label='Petal Length')
ax.bar(species_index4,petal_wd,width=0.2,label='Petal Width')
ax.set(title="Mean Measurements of Iris Species",xlabel="Species",ylabel="Iris Measurements
(cm)",xlim=(0.5,3.7),ylim=(0,10),xticks=[1.1,2.1,3.1],xticklabels=species)
ax.legend()
plt.savefig("plotstyle3.png")
test_generate_plot_with_style3()
File->New->Terminal
python prog.py
python .testscript.py
Hands-On 6
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gs
#Write your code here
def test_generate_figure1():
t = np.arange(0.0, 5.0, 0.01)
s1 = np.sin(2*np.pi*t)
s2 = np.sin(4*np.pi*t)
fig = plt.figure(figsize=(8,6))
axes1 = plt.subplot(211)
axes1.set_title('Sin(2*pi*x)')
axes1.plot(t,s1)
axes2 = plt.subplot(212,sharex=axes1,sharey=axes1)
axes2.set_title('Sin(4*pi*x)')
axes2.plot(t,s2)
plt.savefig("testfigure1.png")
test_generate_figure1()
def test_generate_figure2():
np.random.seed(1000)
x = np.random.rand(10)
y = np.random.rand(10)
z = np. sqrt(x*2 + y*2)
fig = plt.figure(figsize=(8,6))
axes1 = plt.subplot(221)
axes1.set_title('Scatter plot with Upper Traingle Markers')
axes1.scatter(x,y,s=[80],c=z,marker='^')
axes1.set(xticks=[0.0, 0.4, 0.8, 1.2],yticks=[-0.2, 0.2, 0.6, 1.0 ])
axes2 = plt.subplot(222)
axes2.set_title('Scatter plot with Plus Markers')
axes2.scatter(x,y,s=[80],c=z,marker='+')
axes2.set(xticks=[0.0, 0.4, 0.8, 1.2],yticks=[- 0.2, 0.2, 0.6, 1.0 ])
axes3 = plt.subplot(223)
axes3.set_title('Scatter plot with Circle Markers')
axes3.scatter(x,y,s=[80],c=z,marker='o')
axes3.set(xticks=[0.0, 0.4, 0.8, 1.2],yticks=[-0.2, 0.2, 0.6, 1.0 ])
axes4 = plt.subplot(224)
axes4.set_title('Scatter plot with Diamond Markers')
axes4.scatter(x,y,s=[80],c=z,marker='d')
axes4.set(xticks=[0.0, 0.4, 0.8, 1.2],yticks=[-0.2, 0.2, 0.6, 1.0 ])
plt.tight_layout()
plt.savefig("testfigure2.png")
test_generate_figure2()
def test_generate_figure3():
x = np.arange(1,101)
y1 = x
y2 = x**2
y3 = x**3
fig = plt.figure(figsize=(8,6))
g = gs.GridSpec(2,2)
axes1 = plt.subplot(g[0,0])
axes1.set(title="y = x")
axes1.plot(x,y1)
axes2 = plt.subplot(g[1,0])
axes2.set(title="y = x**2")
axes2.plot(x,y2)
axes3 = plt.subplot(g[:,1])
axes3.set(title="y = x**3")
axes3.plot(x,y3)
plt.tight_layout()
plt.savefig("testfigure3.png")
test_generate_figure3()
File->New->Terminal
python prog.py
python .testscript.py