首先,我们需要在 Python 中导入所需的库与模块,并对 notebook 环境与图表风格进行初步的设置:
- %matplotlib inline
- import matplotlib.pyplot as plt
- plt.style.use('seaborn-whitegrid')
- import numpy as np
- import pandas as pd
示例数据为一份硬盘性能数据,如下所示:
- data = pd.read_csv('memory-price.tsv', sep='\t')
- data.head(3)
我们用散点图将硬盘样本数据在不同时间点下的每 GB 价值描绘出来:
- data.plot('dateDecimal', 'dollarsPerGb', logy=True,
- linestyle='none', marker='o');
可以看到,我们生成的图表相对简单,现在我们希望用点的颜色来体现硬盘样本容量的大小,并将纵轴的单位调整为美元($):
- fig, ax = plt.subplots()
- ax.set_yscale('log')
- ax.grid(True)
- color = np.log10(data['sizeInGb']) // 3
- color[np.isnan(color)] = -1 # 处理缺失值
- ax.scatter(data['dateDecimal'], data['dollarsPerGb'],
- c=color, alpha=0.5, s=50, cmap='jet')
- ax.yaxis.set_major_formatter(plt.FormatStrFormatter('$%.2f'));
函数 set_xlabel、set_ylabel、set_title 分别可以帮助我们设置图表中的横轴标签、纵轴标签以及图表标题:
- ax.set_xlabel('year')
- ax.set_ylabel('cost per GB (USD)')
- ax.set_title('Hard Drive costs per GB')
- fig
以上内容转自 数析学院,原文内容较多,感兴趣的同学可以直接查看原文


雷达卡





京公网安备 11010802022788号







