pgfplots ile sütun grafikleri
Bir pgfplots axis'ine ybar (dikey sütunlar) veya xbar (yatay çubuklar) ekleyin, kategorileri symbolic x coords ile adlandırın ve her seriyi koordinatlarla bir \addplot olarak verin.
Adlandırılmış kategorilerle dikey sütunlar
Eksendeki ybar her seriyi sütunlara dönüştürür. symbolic x coords kategori adlarını sırayla listeler, xtick=data ise her sütunun altına bir işaret çizgisi koyar.
Tek bir sütun serisi
\begin{tikzpicture}
\begin{axis}[
ybar, ymin=0,
symbolic x coords={Mon, Tue, Wed, Thu, Fri},
xtick=data,
ylabel={Visitors},
enlarge x limits=0.15,
]
\addplot coordinates {(Mon,44) (Tue,31) (Wed,38) (Thu,27) (Fri,40)};
\end{axis}
\end{tikzpicture}Sütunlar sıfırdan başlar. ymin=0 olmadan eksen sıfırın altına biraz boşluk ekler; sütunların çerçeveye oturması için onu ayarlayın. enlarge x limits yanlara boşluk ekler, böylece dıştaki sütunlar çerçeve tarafından kesilmez.
Gruplu sütunlar ve değer etiketleri
Birkaç seri olduğunda her kategorinin sütunları yan yana durur. nodes near coords her değeri sütununun üstüne yazar, bar width ise genişliği belirler (varsayılan 10pt).
Sütunlar üzerinde değerlerle iki seri
\begin{tikzpicture}
\begin{axis}[
ybar, ymin=0, ymax=55, bar width=12pt,
symbolic x coords={Erika, Hans, John},
xtick=data, enlarge x limits=0.25,
nodes near coords,
ylabel={Points},
legend style={at={(0.5,-0.12)}, anchor=north, legend columns=2},
]
\addplot coordinates {(Erika,44) (Hans,31) (John,38)};
\addplot coordinates {(Erika,40) (Hans,36) (John,29)};
\legend{Round 1, Round 2}
\end{axis}
\end{tikzpicture}ybar=4pt, bir gruptaki sütunlar arasındaki boşluğu belirler (varsayılan 2pt).
Yığılmış sütunlar
ybar stacked, serileri yan yana değil üst üste koyar. İkinci \addplot, birincinin bittiği yerden başlar.
Çeyrek başına yığılmış sütunlar
\begin{tikzpicture}
\begin{axis}[
ybar stacked, ymin=0, bar width=16pt,
symbolic x coords={Q1, Q2, Q3, Q4},
xtick=data, enlarge x limits=0.2,
legend pos=north west, ylabel={Sales},
]
\addplot coordinates {(Q1,12) (Q2,18) (Q3,15) (Q4,22)};
\addplot coordinates {(Q1,6) (Q2,9) (Q3,12) (Q4,10)};
\legend{Online, In store}
\end{axis}
\end{tikzpicture}Yatay çubuklar
xbar çubukları soldan sağa çizer. Eksenlerin rollerini değiştirin: kategoriler symbolic y coords ve ytick=data içine gider, her koordinat da (değer, kategori) olarak yazılır.
Yatay çubuklar
\begin{tikzpicture}
\begin{axis}[
xbar, xmin=0, xmax=50,
symbolic y coords={Rust, Python, C},
ytick=data, enlarge y limits=0.3,
nodes near coords, xlabel={Projects},
width=8cm, height=5cm,
]
\addplot coordinates {(44,Rust) (31,Python) (12,C)};
\end{axis}
\end{tikzpicture}xbar stacked da çalışır.
Kategori olarak sayılar
Yıllar ve diğer sayılar symbolic x coords gerektirmez: onları sayı olarak çizin ve xtick=data kullanın. pgfplots varsayılan olarak 2024'ü "2,024" diye yazar; işaret çizgisi etiket stilinde binlik ayırıcıyı kapatın.
x ekseninde yıllar
\begin{tikzpicture}
\begin{axis}[
ybar, ymin=0, xtick=data, enlarge x limits=0.25,
x tick label style={/pgf/number format/1000 sep=},
]
\addplot coordinates {(2023,18) (2024,31) (2025,44)};
\end{axis}
\end{tikzpicture}Bir bakışta seçenekler
| Seçenek | Ne yapar | Scissor LaTeX'te |
|---|---|---|
ybar, xbar | yan yana dikey veya yatay sütunlar | Çalışır |
ybar=4pt | bir gruptaki sütunlar arasındaki boşluk | Çalışır |
ybar stacked, xbar stacked | üst üste sütunlar | Doğrusal eksenlerde çalışır |
bar width=12pt | her sütunun genişliği | Çalışır |
bar shift=.. | bir seriyi yana kaydırır | Çalışır |
nodes near coords | her sütunun üstünde (veya yanında) değer | Çalışır |
symbolic x coords, symbolic y coords | adlandırılmış kategoriler | Çalışır, sayıya benzeyen adlar hariç (işaret çizgisi etiketi yok) |
xticklabel style={rotate=45, anchor=east} | eğik kategori adları | Çalışır |
ybar interval | x değerleri arasındaki boşluğu dolduran sütunlar | Kısmen: x değerlerinde sıradan sütunlar olarak çizilir |
hist (statistics kitaplığı) | değerleri aralıklara sayar | Desteklenmiyor: bir iletiyle yok sayılır, ham değerler bir çizgi olarak çizilir |
TeX kurulumundan farkları
Bu sayfadaki tüm örnekler bir TeX kurulumunda pgfplots ile de derlenir. Kılavuz: ctan.org/pkg/pgfplots.
Ayrıca bkz. pgfplots temelleri, Hata çubukları, CSV'den veri ve pgfplots.
Sorular ve yanıtlar
LaTeX'te sütun grafiği nasıl yapılır?
pgfplots'u yükleyin ve her seri için bir \addplot coordinates {(A,3) (B,5) (C,2)}; ile \begin{axis}[ybar, symbolic x coords={A,B,C}, xtick=data] yazın.
Değerler sütunların üstünde nasıl gösterilir?
Eksen seçeneklerine nodes near coords ekleyin. Her sütun, değerini etiket olarak alır.
Sütunların sıfırdan başlaması nasıl sağlanır?
Zaten sıfırdan başlarlar. Altlarındaki boşluğu kaldırmak için eksende ymin=0 (ya da xbar için xmin=0) ayarlayın.
Bu sayfadaki her örnek, site oluşturulurken Scissor LaTeX tarafından dizilir. Son güncelleme: 2026-11-07.