Skip to content

Catatan open source

Semua tulisan
27 Okt 20267 menit bacaopen source · AI agent · data visualization · matplotlib · research toolsBaca dalam:ENID

FigMirror: Plot Data Anda dengan Gaya Figure Paper Apa Pun

FigMirror adalah agen AI open source dari VILA Lab yang meniru gaya figure akademik apa pun dan menggambar ulang data Anda dengan gaya itu, lewat loop Drawer dan Reviewer dengan Grounded Measurement, didukung 548 bintang GitHub.

Grafik garis warna-warni di atas grid gelap, seperti figure penelitian.

Setiap peneliti pernah merasakannya. Anda menemukan figure di sebuah paper yang terlihat persis seperti yang Anda mau: warnanya, tipografinya, tata letak panelnya. Lalu Anda menghabiskan satu sore mencoba menciptakan ulang tampilan itu dengan data Anda sendiri, mengutak-atik ukuran font dan kode hex sampai plotnya berhenti terlihat seperti draf kasar. FigMirror mengotomatisasi pekerjaan itu. Beri ia figure referensi dan data Anda, dan ia akan menggambar ulang data Anda dengan gaya referensi tersebut, sebagai kode matplotlib yang bisa diedit plus PDF siap cetak di akhirnya.

Proyek ini adalah VILA-Lab/FigMirror, yang dideskripsikan di GitHub sebagai alat agen AI otomatis untuk memplot data Anda dengan gaya figure paper apa pun. Saat artikel ini ditulis, proyek ini memegang 548 bintang dan 40 fork, dan berasal dari VILA Lab di MBZUAI. Tonton sinyal repo 30 detiknya: Clone Any Academic Figure with AI.

Poin Utama

FigMirror menerima figure referensi plus data Anda dan menghasilkan figure baru dengan gaya visual referensi tersebut, bukan salinan dari referensi itu sendiri.

Agen Drawer menggambar, agen Reviewer mengkritik, dan loop-nya beriterasi sampai hasilnya cocok, dengan daftar preserve yang mencegah pergeseran gaya.

Grounded Measurement adalah trik intinya: agen mengukur referensi berdasarkan koordinat dan mengubah pengukuran itu menjadi pengecekan yang bisa dieksekusi.

Keluarannya adalah kode matplotlib yang bisa diedit plus PDF, jadi Anda bisa memperbaiki apa pun secara manual setelahnya.

Ia tersedia sebagai skill Claude Code dan Codex, dengan web UI lokal untuk unggah, pratinjau, dan penelusuran iterasi.

Metodenya didukung preprint arXiv dan benchmark 399 referensi, PlotTwin-Bench.

Masalah yang Dipecahkan FigMirror

Mereproduksi sebuah figure dan mengubah gaya data Anda sendiri adalah dua tugas berbeda, dan kebanyakan alat hanya melakukan yang pertama. Mengubah figure yang diterbitkan menjadi kode adalah demo yang menarik, tapi bukan itu yang biasanya dibutuhkan peneliti. Yang Anda butuhkan adalah hasil baru Anda disajikan dengan bahasa visual dari figure yang Anda kagumi: skema warnanya, tipografinya, susunan panelnya, gaya aksisnya.

Transfer itu sulit karena gaya hidup dalam detail. Sebuah warna bukan sekadar "biru", melainkan nilai hex spesifik yang dibaca dari segmen garis tertentu. Sebuah font bukan sekadar "serif", melainkan ukuran, ketebalan, dan penempatan relatif terhadap aksis. Peniruan di level piksel hanya menebak detail-detail ini dan meleset. Jawaban FigMirror adalah mengukurnya, bukan menebaknya.

Proyek ini dibangun untuk situasi persis itu, yang disebut papernya sebagai transfer gaya berkondisi referensi: memplot data baru sambil mempertahankan gaya visual dari figure referensi. Jika Anda ingin gambaran yang lebih luas tentang arti open source bagi proyek seperti ini, penjelasan sebelumnya What Is Open Source? membahas dasar-dasarnya.

Cara Kerjanya: Drawer dan Reviewer

FigMirror menjalankan loop agen dengan dua peran. Drawer merender figure kandidat. Reviewer membandingkannya dengan gambar referensi dan mengembalikan ulasan visual, daftar periksa revisi, dan daftar preserve. Orchestrator mengubah umpan balik itu menjadi gambar beranotasi dan catatan untuk putaran Drawer berikutnya, dan siklusnya berulang di bawah batas iterasi yang ketat.

Dua detail membuat loop ini bekerja lebih baik daripada sekadar perintah "gambarkan saya sebuah figure".

Pertama, daftar preserve. Daftar ini terakumulasi di setiap iterasi sebagai jangkar melawan pergeseran gaya, mencatat elemen yang sudah benar supaya revisi berikutnya tidak merusaknya saat memperbaiki hal lain. Siapa pun yang pernah melihat alat AI iteratif memperbaiki satu masalah dan memunculkan dua masalah baru akan paham kenapa ini penting.

Kedua, Grounded Measurement. Drawer tidak menebak-nebak referensi dari tampilannya. Ia bertumpu pada dua kemampuan model foundation yang dilatih untuk penggunaan komputer: Measurement with Axis, yang mengembalikan koordinat x dan y untuk target visual, dan Resonate with Code, yang mengubah koordinat tersebut menjadi pengecekan yang bisa dieksekusi, misalnya memotong segmen garis dan membaca warnanya dari piksel. Gayanya diukur, lalu dikodekan, lalu diperiksa terhadap pengukuran itu.

Untuk figure 3D, FigMirror menambahkan prompting yang sadar geometri untuk sudut kamera, skala, permukaan, pencahayaan, dan pengecekan perbaikan, membantu loop mempertahankan komposisi 3D dari referensi sambil tetap menghasilkan kode matplotlib yang bisa diedit.

Apa yang Sebenarnya Anda Dapatkan

Keluarannya bukan PNG yang harus Anda terima atau tolak. Ia adalah skrip matplotlib yang bisa diedit plus PDF siap cetak. Perbedaan itu adalah inti dari pekerjaan publikasi: Anda bisa membuka skripnya, menyesuaikan label, memindahkan legenda, mengubah warna, dan membuat ulang. Agen mengerjakan 90 persen pertama yang membosankan, dan Anda tetap memegang kendali akhir.

Proyek ini juga menyediakan galeri sebagai titik awal. Jika Anda tidak punya referensi berkualitas tinggi, Anda bisa memilih dari 139 figure paper di 25 keluarga grafik, dan showcase-nya mencakup komposisi multi-panel yang padat, plot hexbin gabungan dengan histogram marginal, dan plot waterfall 3D.

Riset di Baliknya

FigMirror bukan sekadar alat dengan demo yang menarik. Ia disertai paper, FigMirror: Ground It, Code It, Plot It, karya Xiaohan Zhao, Jiacheng Liu, Yaxin Luo, dan Zhiqiang Shen dari VILA Lab, yang dikirim ke arXiv pada 28 Agustus 2026. Paper ini memperkenalkan PlotTwin-Bench, benchmark yang dikurasi ahli untuk transfer gaya berkondisi referensi dengan metrik gaya level kode dan level gambar yang terperinci.

Pada subset evaluasi 150 instance dalam paper, 50 referensi yang dikurasi manual plus 100 referensi augmented yang diambil acak, FigMirror mencapai skor gabungan tertinggi di kedua split: 72,7 pada referensi yang dikurasi manual dan 76,4 pada referensi augmented, dengan semua metode yang dibandingkan menggunakan GPT-5.5. Benchmark lengkapnya memegang 399 referensi, dan konfigurasi bench default di Hugging Face Hub memegang 150 tugas evaluasi.

Angka benchmark pantas mendapat catatan, dan yang ini pun tidak terkecuali. Skor gaya gabungan adalah proksi untuk "terlihat seperti referensi", bukan jaminan bahwa figure spesifik Anda akan keluar sempurna. Pembacaan yang jujur adalah metodenya mengalahkan baseline pada pengujian yang dikurasi, dan keluaran yang bisa diedit berarti Anda bisa melihat dan memperbaiki sisanya.

Memulai

FigMirror terpasang sebagai skill di dalam Claude Code atau Codex, atau berjalan lewat web UI lokal. Jalur skill saja hanya butuh satu perintah:

  1. Pasang: `curl -fsSL https://raw.githubusercontent.com/VILA-Lab/FigMirror/main/scripts/install.sh | bash`

  2. Lampirkan tangkapan layar figure paper, tempel data Anda, dan tanyakan: "Use FigMirror to mirror this figure's style with my data."

Untuk web UI, yang menambahkan unggah, pratinjau, riwayat iterasi, dan penyempurnaan di browser:

  1. Klon repositori: `git clone https://github.com/VILA-Lab/FigMirror.git && cd FigMirror`

  2. Jalankan installer: `bash scripts/install.sh`

  3. Jalankan server: `uv run python scripts/figcopy_serve.py --workspace .artifacts/figmirror-workspace --backend codex`

  4. Buka `http://127.0.0.1:8765/`

Gunakan `--backend claude` untuk menjalankan web UI yang sama lewat Claude Code. Installer mendeteksi harness agen Anda secara otomatis dan memasang skill `figmirror` plus agen kustom `figmirror-drawer` dan `figmirror-reviewer` yang dipakai loop dengan peran terpisah.

Batasan yang Jujur

FigMirror meniru gaya, bukan makna, dan batas itu penting. Ia bisa mereproduksi tampilan referensi dengan setia sementara data Anda menceritakan kisah yang berbeda dari referensi, jadi Anda tetap perlu memeriksa bahwa figure baru itu jujur: aksis berlabel benar, skala tidak menyesatkan, dan tidak ada elemen visual bawaan referensi yang menyiratkan sesuatu yang tidak didukung data Anda.

Ia juga loop agen dengan model di belakangnya, jadi setiap iterasi menghabiskan token, dan batas iterasi yang ketat ada karena alasan itu. Mulailah dengan referensi yang bersih dan data yang terformat baik, dan alokasikan usaha Anda untuk putaran poles akhir di kode matplotlib, yang memang tempat peneliti seharusnya menghabiskan waktunya.

Terakhir, catatan gaya untuk penggunaan akademik. Meminjam gaya sebuah figure adalah praktik normal dalam publikasi ilmiah, tapi menyalin konten figure bukan. FigMirror dibangun untuk kasus pertama: data Anda, tampilan mereka. Jaga garis itu tetap jelas dalam pekerjaan Anda sendiri.

Siapa yang Sebaiknya Mencobanya?

FigMirror cocok untuk peneliti dan mahasiswa yang menyiapkan figure paper, poster, atau slide dan ingin tampilan profesional tanpa seharian mengutak-atik matplotlib. Ia cocok untuk siapa pun yang punya gaya figure favorit dari bidangnya dan dataset baru yang pantas mendapat perlakuan sama. Dan ia cocok untuk pembangun agen AI yang penasaran dengan loop yang benar-benar cerdas: mengukur gambar dengan koordinat, mengubah pengukuran menjadi kode, dan memeriksa kode terhadap gambar.

Ia kurang berguna jika Anda hanya butuh grafik default yang cepat, di mana plot matplotlib atau seaborn biasa lebih cepat, atau jika figure Anda sama sekali tidak punya gaya referensi untuk dipinjam. Nilai alat ini ada pada transfernya, bukan pada menggambar dari nol.

Pertanyaan yang Sering Diajukan

Apa itu FigMirror?

FigMirror adalah alat agen AI open source yang memplot data Anda dengan gaya visual dari figure paper referensi apa pun, menghasilkan kode matplotlib yang bisa diedit dan PDF siap cetak.

Apa bedanya dengan meminta chatbot menggambar grafik?

Chatbot menebak gaya dari deskripsi. FigMirror mengukur figure referensi berdasarkan koordinat, mengubah pengukuran itu menjadi pengecekan yang bisa dieksekusi, dan beriterasi dengan loop Drawer dan Reviewer sampai hasilnya cocok, dengan daftar preserve yang mencegah revisi berikutnya merusak kemenangan sebelumnya.

Apa yang saya dapatkan di akhir?

Skrip matplotlib yang bisa diedit plus PDF. Anda bisa membuka skripnya dan menyesuaikan label, warna, dan tata letak secara manual.

Apakah saya butuh Claude Code atau Codex?

FigMirror tersedia sebagai skill untuk keduanya, plus web UI lokal yang berjalan lewat salah satu backend. Pilih harness yang sudah Anda pakai.

Apakah ada benchmark?

Ya. PlotTwin-Bench, yang diperkenalkan dalam preprint FigMirror, memegang 399 referensi, dengan subset evaluasi 150 tugas di mana FigMirror mencetak 72,7 pada referensi yang dikurasi manual dan 76,4 pada referensi augmented.

Bisakah ia menangani figure 3D?

Ya, dengan prompting yang sadar geometri untuk kamera, skala, permukaan, dan pencahayaan, plus pengecekan perbaikan untuk mempertahankan komposisi 3D.

Kesimpulan

Kebanyakan alat grafik meminta Anda mendeskripsikan figure yang Anda mau. FigMirror meminta Anda menunjukkannya satu. Ukur gayanya, kodekan gayanya, periksa kodenya terhadap pengukuran itu, dan serahkan skrip yang bisa diedit kepada peneliti di akhirnya. Bagi siapa pun yang pernah kehilangan satu sore karena ukuran font dan kode hex, itu pertukaran yang sangat bagus.

Baca artikel ini dalam bahasa Inggris: FigMirror: Plot Your Data in Any Paper's Figure Style.

Tag: open source · AI agent · data visualization · matplotlib · research tools

Semua tulisan