根据表 6-7 的数据绘制一个折线图,具体要求如下:
(1)在距画布顶部 0.2、左侧 0.2 的位置上添加一个宽度为 0.5、高度为 0.5的绘图区域;
(2)x轴的刻度标签为周日期;
(3)刻度线样式调整为:方向朝内,宽度为2,长度为8;
(4)隐藏坐标轴的上轴脊、右轴脊;
%matplotlib notebook
import numpy as np
import matplotlib.pyplot as plt
# 1.设置中文黑体
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False
# 2.准备数据
labels = ['周一','周二','周三','周四','周五','周六','周日']
x_month = np.array(labels)
y_data = [44.98, 45.02, 44.32, 41.05, 42.08, 42.08, 42.08] #周末休市
# 3.创建画布和布局
ax = plt.axes((0.2,0.2,0.5,0.5))
ax.plot(x_month,y_data,'m-o',markersize=18)
# 4.绘图
ax.set_title('某股票一周的收盘价')
ax.set_ylabel('收盘价(¥)')
ax.set_xlabel('周日期')
#5.定制刻度
ax.tick_params(direction='in',width=2,length=8)
xticks_angle = 45 # 设置倾斜角度
plt.xticks(rotation=xticks_angle) # 通过 rotation 参数设置 x 轴刻度标签的倾斜角度
# 6.隐藏上轴脊和右轴脊
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
# 7.展示图表
plt.show()
展示结果如图所示:
【matplotlib绘图思路】 0. 准备数据(数据爬取-数据清洗-数据结构化): 数据格式要符合传参的需求 1. 创建一个画布实例 2. 基于这个画布实例,划分区域,并在对应区域创建坐标系实例(直角坐标系实例,极坐标系实例) 3. 通过坐标系实例,调用所需的绘图方法,实现绘图 4. 图表辅助元素的定制和样式美化(花时间最多,客户需求经常改变,要随之调整) 5. 展示图表(渲染图表)