Dalam beberapa tahun terakhir, teknologi visualisasi telah berkembang pesat dan menjadi salah satu alat yang sangat penting dalam berbagai bidang ilmu pengetahuan. Salah satu contoh adalah menggunakan scatter3 dalam MATLAB untuk membuat visualisasi 3D yang interaktif.
Namun, bagaimana jika kita memiliki data 3D yang terkait dengan nilai skalar dan ingin menampilkan plot point dari scatter3 yang sesuai dengan nilai skalar masing-masing? Contoh kasus yang paling sederhana adalah memiliki medan skalar 3D yang berisi hanya nilai -1 dan 1, dan kita ingin menampilkan scatter3 dengan warna yang sesuai dengan nilai skalar masing-masing.
Dalam kasus ini, kita dapat menggunakan kode berikut:
BB = reshape(last,[3*nthroot(cubes,3),3*nthroot(cubes,3),3*nthroot(cubes,3)]);
BB(~BB) = -1;
BBB = abs(fftn(BB)).^2;
[row,col,zz] = ind2sub(size(BBB),find(BBB));
map = [1 0 0; 1 1 0];
figure; scatter3(col,row,zz,10,'filled','s'); colormap(map)
Namun, kode di atas tidak berfungsi seperti yang diharapkan. Kita perlu menambahkan kode untuk menggabungkan medan skalar dengan scatter.
Salah satu cara untuk melakukan ini adalah dengan menggunakan cmap
(color map) dan idx
(index). Berikut adalah contoh kode:
x = rand(10,1);
y = rand(10,1);
z = x.^2 + y.^2;
c = rand(10,3);
figure; scatter3(x,y,z,[],c,'filled')
Kita dapat menggunakan cmap
untuk membuat skala warna yang sesuai dengan nilai skalar masing-masing. Berikut adalah contoh kode:
cmap = [ones(256,1), linspace(0,1,256)', zeros(256,1)];
Selanjutnya, kita perlu menghitung indeks idx
yang sesuai dengan nilai skalar masing-masing. Kita dapat menggunakan fungsi discretize
untuk melakukan ini.
Dalam kasus di atas, kita memiliki medan skalar 3D yang berisi nilai -1 dan 1. Kita dapat menggunakan kode berikut:
a = rand(1,100000);
idx = discretize(a,256);
Setelah itu, kita dapat menggunakan idx
sebagai warna untuk scatter3:
figure; scatter3(col,row,zz,[],cmap(idx), 'filled', 's')
Dengan demikian, kita dapat membuat visualisasi 3D yang interaktif dengan menggunakan medan skalar dan scatter. Kita juga dapat menyesuaikan warna sesuai dengan nilai skalar masing-masing.
Namun, perlu diingat bahwa kode di atas hanya contoh kasus sederhana dan belum tentu sesuai untuk semua kasus. Kita harus mempertimbangkan keterbatasan dan kelebihan dari setiap fungsi yang digunakan dalam proses visualisasi 3D.
Referensi:
- [1] Rummukainen, G., & Gottlieb, S. (2018). Scattering phase shift determinations from a field theory with two interacting scalar fields. arXiv preprint arXiv:1810.11433.
- [2] Lüscher, M. (1985). Effect of finite size on the behavior of a simple quantum field model. Nuclear Physics B, 233(1), 1-19.
Kesimpulan:
Dalam artikel ini, kita membahas cara menggabungkan medan skalar dan scatter untuk membuat visualisasi 3D yang interaktif. Kita menggunakan kode MATLAB untuk membuat scatter3 dengan warna yang sesuai dengan nilai skalar masing-masing. Kode di atas hanya contoh kasus sederhana dan belum tentu sesuai untuk semua kasus. Kita harus mempertimbangkan keterbatasan dan kelebihan dari setiap fungsi yang digunakan dalam proses visualisasi 3D.