Subplot grafik çizimi

x ve ye ye bağlı bir denklem var elimde x ve y -25 den 25 arasında olacak şekilde yüzeyin grafiğini çizmem lazım ama x ve y değeri tek fonksiyon olunca yapamadım ve z yi nasıl elde edeceğimi çözemedim yardım ederseniz sevinirim1 2

Merhaba.

Kodlarınızın tamamını buraya göre atabilir misiniz:

fig = plt.figure()
ax = plt.axes(projection=‘3d’)
x=np.linspace(-25,25,)
y=np.linspace(-25,25,)
(x,y)=np.linspace((((x2)+(y2))/2)+15*(np.cos((x)((np.pi)/2))+np.cos((y)(np.pi/2))))
x,y=np.meshgrid(x,y)
z=1
surf=ax.plot_surface(x,y,z)
plt.show()

kodu böyle yazdım pythonda yeniyim büyük ihtimal tamamı yanlış.
ve attığın şeyi tam anlayamadım umarım bu işe yarar

en başta matplotlib kütüphanesini from matplotlib.pyplot as plt şeklinde import ettiniz mi ?

evet ettim
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D

x kare + y kare ifadesinin (x2)+(y2) şeklinde olduğunu gördüm. Doğrusu (x ** 2) + (y ** 2) şeklinde denediniz mi ?

Kodu düzgün atmadığı için öyle.

aynen öyle gözükmüş ** kullandım

sizde mi projection = “3d” bölümünde hata aldınız ?

TypeError: _linspace_dispatcher() missing 1 required positional argument: ‘stop’
verdiği hata bu

" " değil ’ ’ kullandım birde

verdiğiniz kodları anaconda navigatorda denedim. verdiği tek hata 3d de oldu. onlarıda project=“3d” yerine project = “3d” şeklinde birer boşluklarla yazdım ve 3 boyutlu koordinat geldi önüme

spyder da yazıyorum ben de project ile yazınca boş grafik bile gelmiyor projection yazınca en azından boş grafik çıkıyor karşıma

bu numpy matplotlib pandas gibi yapay zekaya yönelik kütüphanelerin anaconda navigatorde jupyter notebook ile daha verimli olduğunu söylüyorlardı hep. Birde oradan denemeye çalışın. Bende bakıyorum şuanda. Bir hatayı düzeltiyorum başka hata geliyor :grin:

anladım eğer spyder da yapabilirseniz çok sevinirim spyder kullanmam gerekiyor da

Bu bir farka sebep olmuyor.

Bu da öyle.

mantıklı peki çözümü nasıl olacak

Şu hatayı çözmek ile başlayabilirsiniz:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = plt.axes(projection="3d")
x=np.linspace(-25,25,)
y=np.linspace(-25,25,)
(x,y)=np.linspace((((x**2)+(y**2))/2)+15*(np.cos((x)((np.pi)/2))+np.cos((y)(np.pi/2))))
x,y=np.meshgrid(x,y)
z=1
surf=ax.plot_surface(x,y,z)
plt.show()
Traceback (most recent call last):
  File "C:\Users\User\Desktop\finans.py", line 10, in <module>
    (x,y)=np.linspace((((x**2)+(y**2))/2)+15*(np.cos((x)((np.pi)/2))+np.cos((y)(np.pi/2))))
TypeError: 'numpy.ndarray' object is not callable

Parantezlerde bir problem olsa gerek, böyle işlemleri farklı satırlara yaymanız daha iyi olur.

O da kodu düzgün atmadığınız içinmiş…

import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = plt.axes(projection="3d")
x=np.linspace(-25,25,)
y=np.linspace(-25,25,)

x, y = np.linspace(
    ((x**2 + y**2)/ 2 )
    +15*(
        np.cos(x * np.pi/2 )
        +np.cos(y * np.pi/2 )
        )
    )

x,y=np.meshgrid(x,y)
z=1
surf=ax.plot_surface(x,y,z)
plt.show()

ekran görüntüsünde daha rahat belli oluyor parantezlere tekrar baktım doğru eminim onlardan asıl sıkıntı fonksiyon x ve y ye bağlı 2 sinin bir olduğu fonksiyon olunca x ve ye değerlerini nasıl kullanmam gerektiğini anlamadım ve z değerini nasıl bulacam oraya z=1 i sadece denemek için yazdım
n=50
x=np.linspace(-25,25,n)
y=np.linspace(-25,25,n)
bu kısmıda sonradan değiştirdim böyle yazdım