发布时间: 2023-7-13 文章作者: myluzh 分类名称: Python 朗读文章
import matplotlib.pyplot as plt import random # 支持中文 from pylab import mpl mpl.rcParams['font.sans-serif'] = ['Arial Unicode MS'] mpl.rcParams['axes.unicode_minus'] = False # 用来解决不能使用汉字问题,需要导入matplotlib # 准备x y 数据 x = range(1, 31) y_hangzhou = [random.uniform(35, 42) for i in x] y_beijing = [random.uniform(34, 39) for i in x] # nrows/ncols设置成有几行几列的坐标系。返回fig:图对象,axes:返回相应数量的坐标系 fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(20, 8), dpi=50) axes[0].plot(x, y_hangzhou, color="b", linestyle='-', label='上海') axes[1].plot(x, y_beijing, color="r", linestyle='--', label='北京') # 刻度显示 自定义x y 刻度 # 构造xy刻度标签 x_ticks = ([f"6月{i}日" for i in x]) y_ticks = range(45) axes[0].set_title('上海30天气温', fontsize=20) axes[0].set_xlabel("时间") axes[0].set_ylabel("温度") axes[0].set_xticks(x[::4], x_ticks[::4]) axes[0].set_yticks(y_ticks[30::2]) axes[1].set_title('北京30天气温', fontsize=20) axes[1].set_xlabel("时间") axes[1].set_ylabel("温度") axes[1].set_xticks(x[::4], x_ticks[::4]) axes[1].set_yticks(y_ticks[30::2]) # 添加网格显示 axes[0].grid(True, alpha=0.5, linestyle="--") axes[1].grid(True, alpha=0.5, linestyle="-") # 添加图例 axes[0].legend(loc=0) axes[1].legend(loc=0) # 显示 plt.show()
标签: python matplotlib
发表评论