Я впервые использую python для построения графиков, и я думаю, что я не совсем понимаю взаимодействия между объектами в matplotlib.У меня есть следующий модуль:
import numpy as np
import matplotlib.pyplot as plt
def plotSomething(x,y):
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xscale("log", nonposx='clip')
ax.set_yscale("log", nonposy='clip')
ax.scatter(x,y) #(1)
plt.scatter(x,y) #(2)
, и он прекрасно работает, когда вызывается функция (учитывая x и y).
a) Если я закомментирую (1) или (2), будет построена только ось, но не сам разброс.
b) Однако, если оба (1) и (2)не комментируются, и я добавляю переменные s = 5, marker = '+' к любому (1) XOR (2), на рисунке будут показаны оба маркера (один поверх другого) - по умолчанию 'o' и '+', что означает, что я на самом деле нанести разброс дважды.
НО - если из-за того, что оба (1) и (2) не закомментированы, я строю графики дважды, почему мне действительно нужно иметь оба (1) и (2), чтобы увидеть какой-либо разброс?почему в случае (а) у меня вообще нет разбросанного графика?
Я озадачен.Кто-нибудь может направить меня?