Matplotlib是一个用于生成高质量图表(通常是二维)的交互式可视化类库,支持在Python环境下进行Matlab风格的绘图,同时支持将图表导出为常用的图形格式(PDF、SVG、JPG、PNG、BMP、GIF等)。该项目由John Hunter于2002年发起,经过与IPython社区的合作简化了在IPython/Jupyter中的交互式体验。
作为数据可视化工具,Matplotlib略显底层,提供的图表较为基本,视觉美观度欠佳,因而催生了Seaborn、HoloViews等高级组件。
conda install matplotlib
;import matplotlib.pyplot as plt
;%matplotlib inline
。import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 准备数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tanh(x)
# 图表绘制
plt.figure(figsize=(12,4))
plt.plot(x, y1, 'r-o', label='$sin(x)$', linewidth=0.3)
plt.plot(x, y2, 'b-*', label='$cos(x)$', linewidth=0.3)
plt.plot(x, y3, 'g-^', label='$tanh(x)$', linewidth=0.3)
# 添加元素
plt.xlabel('t/s')
plt.ylabel('V')
plt.title('Trigonometric Graph')
plt.legend()
# 图表输出
plt.savefig('Trigonometric Graph.jpg')
plt.show()
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 准备数据
df_train = pd.read_csv('./datas/titanic/titanic_train.csv')
values = df_train['Fare'].sort_values(ascending=False)
bins = np.arange(0, 800, 40)
# 图表绘制
plt.hist(values, bins=bins)
# 添加元素
plt.xlabel('Fare')
plt.ylabel('Frequency')
plt.title('Fare Payed Histrogram')
# 图表输出
plt.tight_layout()
plt.savefig('Fare Payed Histrogram.jpg')
plt.show()
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 准备数据
df_train = pd.read_csv('./datas/titanic/titanic_train.csv')
labels = df_train['Pclass'].unique()
props = list();
for val in labels:
props.append((df_train['Pclass'] == val).sum())
# 图表绘制
plt.pie(
props, # 数值
labels = labels, # 标签
shadow = False, # 有无阴影
colors = ['blue', 'red', 'green'], # 标签颜色
explode = (0.1, 0, 0), # 离心距离
startangle = 90, # 起始角度
autopct = '%1.1f%%' # 保留一位小数百分比
)
# 添加元素
plt.title('Pclass Proportion')
plt.axis('equal')
# 图表输出
plt.tight_layout()
plt.savefig('Titanic Pclass Proportion.jpg')
plt.show()