Chuyển đến nội dung

pgfplots trong Scissor LaTeX

Gói pgfplots hoạt động trong Scissor LaTeX với hầu hết đồ thị 2D, được vẽ bằng bộ dựng hình riêng: trục, đồ thị đường, điểm và cột, công thức, bảng và tệp CSV, trục logarit, thanh sai số, chú giải, groupplots, fill between và bản đồ nhiệt nhìn từ trên xuống; góc nhìn 3D, axis equal và bảng của pgfplotstable chưa được hỗ trợ.

Gói này làm gì

pgfplots vẽ đồ thị từ dữ liệu hoặc công thức bên trong một hình TikZ. Bạn mở \begin{tikzpicture}\begin{axis}[...], thêm một \addplot cho mỗi chuỗi dữ liệu, và pgfplots tự chọn vạch chia, chú giải và màu. Các tùy chọn của nó bao gồm trục logarit, biểu đồ cột, thanh sai số, bảng màu và nhiều thứ khác.

Scissor LaTeX không chạy pgfplots. Bộ dàn trang đọc cùng đoạn mã đó và tự vẽ đồ thị dưới dạng đồ họa vectơ, với nhãn dùng phông chữ của tài liệu. Kết quả bám sát các giá trị mặc định của pgfplots, và mã nguồn biên dịch được trong một bản cài đặt TeX mà không cần sửa.

Những gì hoạt động ở đây

Tính năngTrong Scissor LaTeXThêm
axis với nhãn, tiêu đề, chú giải, lưới, vạch chia, phạm viHoạt độngCơ bản về pgfplots
Đường, điểm đánh dấu, màu, cycle list, smooth, const plotHoạt độngĐồ thị đường
only marks, đồ thị điểmHoạt độngĐồ thị điểm
ybar, xbar, cột chồng, nodes near coords, symbolic x coordsHoạt độngBiểu đồ cột
error bars/.cd, y explicit, +- (x, y)Hoạt độngThanh sai số
semilogyaxis, loglogaxis, xmode=logHoạt độngTrục logarit
groupplot với group style (thư viện groupplots)Hoạt độngNhóm đồ thị
\addplot table từ các hàng viết trực tiếp hoặc một tệp .csv/.dat trong dự ánHoạt độngDữ liệu từ CSV
\addplot3 với view={0}{90}: surf, matrix plot, contour filled, colorbarHoạt độngĐường đồng mức và bản đồ nhiệt
fill between (thư viện fillbetween), name pathHoạt động
\pgfplotsset{...}, kiểu, compat=Hoạt độngHoạt động như compat=1.18, bất kể thiết lập là gì.
\addplot3 với bất kỳ view nào khác (3D thực sự)Không hỗ trợMột trục trống được vẽ, kèm thông báo.
axis equalKhông hỗ trợBị bỏ qua kèm thông báo; các trục giữ tỷ lệ riêng của chúng.
\pgfplotstabletypeset (pgfplotstable)Không hỗ trợBị bỏ qua kèm thông báo, và tên tệp được in ra.
Tùy chọn không xác địnhBỏ quaBị bỏ qua kèm thông báo nêu tên tùy chọn; phần còn lại vẫn được vẽ.

Ví dụ

Một biểu đồ cột có nhãn giá trị:

Biểu đồ cột với nodes near coords

LaTeXPhần mở đầu: \usepackage{pgfplots}Mở trong trình soạn (mở trong thẻ mới)
\begin{tikzpicture}
  \begin{axis}[ybar, bar width=12pt, ymin=0, ymax=52,
      symbolic x coords={Mon,Tue,Wed,Thu}, xtick=data,
      nodes near coords, enlarge x limits=0.2,
      ylabel={Visitors}, width=7cm, height=5cm]
    \addplot coordinates {(Mon,31) (Tue,44) (Wed,38) (Thu,27)};
  \end{axis}
\end{tikzpicture}

Hai chuỗi dữ liệu đọc từ một bảng viết ngay trong tài liệu, kèm chú giải:

Các cột của một bảng viết trực tiếp

LaTeXPhần mở đầu: \usepackage{pgfplots}Mở trong trình soạn (mở trong thẻ mới)
\begin{tikzpicture}
  \begin{axis}[xlabel={Week}, ylabel={Hours of practice},
      legend pos=north west, width=7cm, height=5cm]
    \addplot table [x=week, y=erika] {
      week erika john
      1    4     2
      2    6     3
      3    5     5
      4    8     6
    };
    \addlegendentry{Erika}
    \addplot table [x=week, y=john] {
      week erika john
      1    4     2
      2    6     3
      3    5     5
      4    8     6
    };
    \addlegendentry{John}
  \end{axis}
\end{tikzpicture}

Một mặt cong nhìn nghiêng hiện chưa được vẽ. Trục hiện ra trống, và thẻ Sự cố giải thích lý do:

Góc nhìn 3D không được vẽ

LaTeXPhần mở đầu: \usepackage{pgfplots}Mở trong trình soạn (mở trong thẻ mới)
\begin{tikzpicture}
  \begin{axis}[view={60}{30}, width=6cm]
    \addplot3[surf, domain=-2:2] {x^2 - y^2};
  \end{axis}
\end{tikzpicture}

Thẻ Sự cố: 3D plots are drawn only when seen from above (view={0}{90}) for now

Khả năng tương thích

  • Từ một bản cài đặt TeX sang đây: hầu hết đồ thị 2D trông giống như ở đó, sai lệch chỉ một hai point. Đồ thị 3D thực sự, axis equal và các tùy chọn nằm ngoài phần được hỗ trợ được nêu tên trong thẻ Sự cố.
  • Từ đây sang một bản cài đặt TeX: đồ thị biên dịch ở đó với pgfplots mà không cần sửa. contour lua và contour gnuplot cần LuaLaTeX hoặc gnuplot ở đó; contour filled thì không cần.

Tài liệu hướng dẫn đầy đủ có trên CTAN: ctan.org/pkg/pgfplots. Với hình vẽ không có trục, xem TikZ.

Hỏi và đáp

Tôi có cần cài pgfplots để dùng nó ở đây không?

Không. Hãy viết \usepackage{pgfplots} như thường lệ; Scissor LaTeX nhận ra đoạn mã và vẽ đồ thị trong trình duyệt.

Vì sao đồ thị 3D của tôi trống?

Hiện chỉ những đồ thị nhìn từ trên xuống (view={0}{90}) được vẽ. Các góc nhìn khác cho ra một trục trống và một thông báo trong thẻ Sự cố.

Tôi có thể vẽ dữ liệu từ tệp CSV không?

Có. Hãy thêm tệp vào dự án và viết \addplot table[x=a, y=b, col sep=comma] {file.csv};.

Mọi ví dụ trên trang này đều được Scissor LaTeX dàn trang khi xây dựng trang web. Cập nhật lần cuối 2026-11-07.