Plot serakan dengan pgfplots
Tambah only marks pada \addplot dalam axis pgfplots, supaya titik dilukis tanpa garis; pilih bentuk dengan mark= dan baca titik daripada koordinat atau jadual.
Titik tanpa garis
Plot serakan ialah siri yang dilukis dengan penanda sahaja. Tambah only marks pada \addplot, dengan + untuk mengekalkan warna dan penanda senarai kitaran.
Dua kumpulan titik
\begin{tikzpicture}
\begin{axis}[xlabel={Height (m)}, ylabel={Mass (kg)}, legend pos=north west]
\addplot+[only marks] coordinates {
(1.62,55) (1.68,61) (1.71,66) (1.75,69) (1.80,74) (1.84,79)};
\addplot+[only marks] coordinates {
(1.58,49) (1.64,57) (1.69,58) (1.73,64) (1.77,68)};
\legend{Group A, Group B}
\end{axis}
\end{tikzpicture}Bentuk, saiz dan warna penanda
mark= menetapkan bentuk dan mark size= jejarinya (2pt secara lalai). Bentuk berisi berakhir dengan *. mark options menggayakan penanda sahaja, contohnya penanda terbuka dengan isian putih.
Penanda berbeza untuk siri berbeza
\begin{tikzpicture}
\begin{axis}[enlargelimits=0.15, legend pos=outer north east]
\addplot[only marks, mark=o, blue] coordinates {(1,2) (2,3) (3,2.5)};
\addplot[only marks, mark=square*, red, mark size=3pt] coordinates {(1,1) (2,1.8) (3,1.2)};
\addplot[only marks, mark=triangle*, teal, mark options={fill=white}] coordinates {(1,3) (2,4) (3,3.8)};
\addplot[only marks, mark=x, black, mark size=4pt] coordinates {(1.5,0.5) (2.5,0.8)};
\legend{circle, square, triangle, cross}
\end{axis}
\end{tikzpicture}Bentuk yang berfungsi disenaraikan di halaman plot garis.
Titik daripada jadual
Untuk lebih daripada beberapa titik, tulis titik-titik itu sebagai jadual. Baris pertama menamakan lajur; x= dan y= memilih lajur yang hendak diplot. Jadual boleh diletakkan sebaris, seperti di sini, atau dalam fail (lihat data daripada fail CSV).
Titik dibaca daripada jadual sebaris
\begin{tikzpicture}
\begin{axis}[xlabel={Hours studied}, ylabel={Points}]
\addplot[only marks, mark=*, blue!70!black] table[x=hours, y=points] {
hours points
2 21
3 26
4 30
5 29
6 37
7 40
8 44
};
\addplot[red, domain=2:8] {13.5 + 3.8*x};
\end{axis}
\end{tikzpicture}Garis merah ialah formula yang dilukis di atas titik-titik, cara mudah untuk menunjukkan trend yang dipadankan.
Mewarnakan titik mengikut nilai
Dengan scatter, setiap titik diwarnakan daripada peta warna mengikut sesuatu nilai. point meta=y menggunakan nilai y; scatter src=explicit dengan meta= membaca lajur ketiga. Tambah colorbar untuk menunjukkan skala.
Titik diwarnakan mengikut lajur ketiga
\begin{tikzpicture}
\begin{axis}[colorbar, colormap/viridis, xlabel=$x$, ylabel=$y$]
\addplot[scatter, only marks, mark size=3pt, scatter src=explicit]
table[x=x, y=y, meta=t] {
x y t
0.5 1.0 10
1.0 2.2 15
1.6 1.4 21
2.1 3.0 28
2.8 2.1 33
3.3 3.6 44
};
\end{axis}
\end{tikzpicture}Kelas titik
Dalam pgfplots, scatter/classes memberikan setiap nama kelas dalam sesuatu lajur penandanya sendiri. Scissor LaTeX belum menyokongnya: pilihan itu diabaikan dengan mesej, dan setiap titik mendapat penanda yang sama.
scatter/classes: satu penanda untuk semua titik
\begin{tikzpicture}
\begin{axis}[width=6cm, height=5cm]
\addplot[scatter, only marks, scatter src=explicit symbolic,
scatter/classes={a={mark=square*, blue}, b={mark=*, red}}]
table[meta=group] {
x y group
1 1 a
2 2 b
3 1.5 a
};
\end{axis}
\end{tikzpicture}Tab Masalah: pgfplots option 'scatter/classes' is not supported yet
Perbezaan dengan pemasangan TeX
Butiran penuh tentang penanda dan pilihan serakan terdapat dalam manual pgfplots: ctan.org/pkg/pgfplots.
Soalan dan jawapan
Bagaimanakah cara membuat plot serakan tanpa garis?
Tambah only marks pada pilihan \addplot, contohnya \addplot+[only marks] coordinates {...};.
Bagaimanakah cara menukar saiz titik?
Gunakan mark size=3pt pada \addplot. Nilai itu ialah jejari penanda.
Bolehkah saya memplot titik daripada fail CSV?
Ya. Muat naik fail ke projek dan tulis \addplot+[only marks] table[x=a, y=b, col sep=comma] {file.csv};.
Setiap contoh di halaman ini disusun atur oleh Scissor LaTeX semasa laman dibina. Kali terakhir dikemas kini 2026-11-07.