十、Matplotlib——图中图、次坐标轴(两个坐标轴)

一、图中图

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
# 1 - 7
x = np.arange(1, 8)
y = [1, 3, 4, 2, 5, 8, 6]
print(x)
# left, bottom 都是百分比 ,指代 ax1 左侧、下侧从图布的百分之几处开始,
# width, height 都是百分比,指代ax1 宽度、高度占整个图布的百分之几
print("=======外部大图=========")
left, bottom, width, height = 0.1, 0.1, 0.8, 0.8
ax1 = fig.add_axes([left, bottom, width, height])
ax1.plot(x, y, 'r')
ax1.set_xlabel('x')
ax1.set_ylabel('y')
ax1.set_title('title')
print("=======添加内部图方法一=========")
left, bottom, width, height = 0.2, 0.6, 0.25, 0.25
ax2 = fig.add_axes([left, bottom, width, height])
ax2.plot(y, x, 'b')
ax2.set_xlabel('x')
ax2.set_ylabel('y')
ax2.set_title('title_inside 1')
print("=======添加内部图方法二=========")
left, bottom, width, height = 0.6, 0.2, 0.25, 0.25
plt.axes([left, bottom, width, height])
# y[::-1] 表示 y 逆序
plt.plot(y[::-1], x, 'g')
plt.xlabel('x')
plt.ylabel('y')
plt.title('title_inside 2')

plt.tight_layout()
plt.show()

十、Matplotlib——图中图、次坐标轴(两个坐标轴)_第1张图片

二、次坐标轴

import numpy as np
import matplotlib.pyplot as plt

# 1 - 7
x = np.arange(0, 10, 0.1)
y1 = 0.05 * x ** 2
y2 = -1 * y1

fig, ax1 = plt.subplots()
print("=================")
# 产生一个ax1的镜面坐标
ax2 = ax1.twinx()

ax1.plot(x, y1, 'g-')
ax2.plot(x, y2, 'b--')

print("===============")
ax1.set_xlabel('X data')
ax1.set_ylabel('Y1', color='g')
ax2.set_ylabel('Y2', color='b')

plt.tight_layout()
plt.show()

十、Matplotlib——图中图、次坐标轴(两个坐标轴)_第2张图片

 

 

你可能感兴趣的:(Matplotlib)