Olá Mariana,
Acredito que ele só queria mostrar o uso do subplots mesmo. Apesar de existir a alternativa de plotar como você fez, é comum vermos vários exemplos na internet que usam o subplot. Quanto a nitidez da figura talvez seja uma questão das dimensões dela. Tente trabalhar esses parâmetros e veja se consegue melhorar a resolução.
import matplotlib.pyplot as plt
plt.figure(figsize=(8, 6), dpi=80)
Retornando ao subplots. O que as pessoas fazem é na definição do plt.subplots é separar a saída em fig e ax. Exemplo:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
fig, ax = plt.subplots()
Assim temos a possibilidade de separar os atributos do eixo e da figura inteira. Uso do ax para plotar e trabalhar os atributos dos eixos:
ax.plot(x, y)
ax.set_title('Gráfico de Seno')
ax.set_xlabel('Eixo x')
ax.set_ylabel('Eixo y')
Já com o fig trabalhamos com a figura inteira:
# Definindo a largura e altura da figura
fig.set_figwidth(8)
fig.set_figheight(6)
# Definindo o estilo de fundo da figura
fig.set_facecolor('whitesmoke')
# Salvando a figura em um arquivo PNG
fig.savefig('grafico.png')
plt.show()
Você pode usar esse exemplo todo em conjunto para gerar uma figura e testar o resultado.