Matplotlib UserWarning veriyor

Arkadaşlar merhaba,
projemde kodumu yazarken çıktılarda böyle bir hata alıyorum nedeni ne olabilir nasıl düzeltebilirim

plt.plot(meanOf_x, "ro", label = "Mean of x", color="purple")
plt.plot(meanOf_y, "ro", label = "Mean of y", color="green")
plt.plot(x_list,cdf_of_x, label="CDF of x", color="blue") # put only 1 parameter for showing variables on x-axis
plt.plot(y_list,cdf_of_y, label="CDF of y", color="red") # put only 1 parameter for showing variables on x-axis
plt.title("CDF of x and y")
plt.show()


grafik
Verdiği grafık çıktısı bu

Hata değil uyarı veriyor aslında, yazdığınız (veya kopyalayıp yapıştırdığınız) "ro" argümanının neye karşılık geldiğini biliyor musunuz? Uyarıda da bir kısmı anlatılıyor aslında…

Sanırım “ro” dediğimiz şey rengi temsil ediyor.
“r” yazdığınız zaman ne oluyor?

grafik

Verdiği çıktı bu hocam

Artık uyarı veriyor mu? Anladığım kadarıyla “ro” → “r” olarak değiştirip o rengi de “red” olarak var sayıyor program.
“yellow” veya “y” ile de deneyebilirsiniz.

Şu satırlardaki plt.plot'u çağırma şekliniz

plt.plot(meanOf_x, "ro", label="Mean of x", color="purple")
plt.plot(meanOf_y, "ro", label="Mean of y", color="green")

şu iki imzadan ilkinin x olmayan haline denk geliyor

plot([x], y, [fmt], *, data=None, **kwargs)
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

fmt opsiyonel pozisyonel argümanı da (büyük ihtimalle) MATLAB’dan yürüttükleri

"[color][marker][line]"

formatı ve bazı rotasyonlarını kapsayan kısayolu simgeliyor. Böylelikle

  • çizdiğinizin rengini,
  • aradeğerlenen (interpolate edilen), yani pasladığınız (x, y) noktalarındaki işaretleyicinin şeklini (siz x’i belirtmiyorsunuz, varsayılan olan 0…N-1’e dönülüyor; N = 1 görüldüğü kadarıyla) ve
  • (varsa) bu değerleri birleştiren doğru parçalarının biçimini tek argümanda belirtebiliyorsunuz.

"ro" yazdığınızda “rengi kırmızı olsun, verdiğim noktaları da çember şekliyle işaretlesin” diyorsunuz. Ama sonra color="purple" (ve color="green") diyerek rengi tekrar ve farklı şekilde belirtiyorsunuz, uyarı veriyor ve bu sonradan verilenlerin değerlendirilip "ro"'daki "r"'nin dikkate alınmayacağını söylüyor. Gerçekten de mor (ve yeşil) bir grafik elde ediyorsunuz.


Bir de yazdığınız label=...'ların yansımasını görmek istiyorsanız uygun bir yerde plt.legend() çağrısı yapmanız gerekiyor.