Menandai suface di Plot3D
Apakah ada cara untuk menandai garis tertentu pada grafik Plot3D dalam skala Log. Plot awal saya adalah: `
Plot3D[(y/(0.5*y + 2*x)), {x, 1/10^10, 1/10^3}, {y, 0, 4.5/10^6},
ScalingFunctions -> {"Log", "Log", None},
ColorFunctionScaling -> True]
`Jika tidak ada dalam skala Log, saya tahu saya dapat menggunakan ParametricPlot3D dan menggunakan Tampilkan untuk melapisinya bersama-sama. Tapi begitu saya memplotnya dalam skala Log, ParametricPlot tidak dapat ditampilkan dalam skala Log. Yang ingin saya miliki adalah seperti ini:
Plot3D[(y/(0.5*y + 2*x)), {x, 1/10^10, 1/10^3}, {y, 0, 4.5/10^6},
ScalingFunctions -> {"Log", "Log", None},
ColorFunctionScaling -> True,
MeshFunctions -> Function @@@ {{{v, u}, v^3}}, Mesh -> 1,
PlotPoints -> 100, Ticks -> Automatic]
`Namun, karena MeshFunctions tidak memberikan gambaran yang berarti tentang apa arti garis tersebut. Apakah ada cara untuk menentukan nilai X untuk memplot garis di permukaan itu? Terima kasih!
Jawaban
Dua koordinat pertama yang diteruskan ke fungsi mesh adalah Logdari xdan ynilai. Berikut adalah kode untuk interpretasi saya tentang maksud MeshFunctionskode contoh OP (dengan nilai berbeda untuk garis mesh):
Plot3D[(y/(y/2 + 2*x)), {x, 1/10^10, 1/10^3}, {y, 0, 4.5/10^6},
ScalingFunctions -> {"Log", "Log", None},
ColorFunctionScaling -> True,
MeshFunctions -> {Function[{logx, logy, z}, Exp[logy]^3]},
Mesh -> {{(5*^-7)^3}}, PlotPoints -> 100, Ticks -> Automatic]