AFAIK, sadece yerli matplotlib
özelliklerini kullanarak matplotlib
arsa üzerinde değil keyfi yer bir tablo olabilir. Ne yapabilirsiniz latex
text rendering olasılığını yararlanmaktır. Bununla birlikte, bunu yapmak için sisteminizde latex
ortamını çalıştırmanız gerekir. Eğer bir tane varsa, böyle aşağıdaki gibi grafikleri üretmek mümkün olmalıdır:
import pylab as plt
import matplotlib as mpl
mpl.rc('text', usetex=True)
plt.figure()
ax=plt.gca()
y=[1,2,3,4,5,4,3,2,1,1,1,1,1,1,1,1]
#plt.plot([10,10,14,14,10],[2,4,4,2,2],'r')
col_labels=['col1','col2','col3']
row_labels=['row1','row2','row3']
table_vals=[11,12,13,21,22,23,31,32,33]
table = r'''\begin{tabular}{ c | c | c | c } & col1 & col2 & col3 \\\hline row1 & 11 & 12 & 13 \\\hline row2 & 21 & 22 & 23 \\\hline row3 & 31 & 32 & 33 \end{tabular}'''
plt.text(9,3.4,table,size=12)
plt.plot(y)
plt.show()
sonucudur:
bu quick'n'dirty örnek olduğunu akılda atın; Metni koordinatlarla oynayarak masayı doğru yerleştirebilmelisiniz. vb
UPDATE fontları değiştirmek gerektiğinde de docs bakınız: daha pyplot.table
üzerinde documentation göre, plt.table
akım eksenlere bir tablo ekler. Kaynaklardan belli ki, grafikteki tablo konumu eksenlere göre belirlenir. Y
koordinatı top
(yukarıdaki grafik), upper
(üst yarıda), center
(ortada), lower
(alt yarıda) ve bottom
(aşağıdaki grafik) ile kontrol edilebilir. X
koordinatı left
ve right
anahtar sözcükleriyle kontrol edilir. İki eserin herhangi bir kombinasyonu, örn. Kullanmak için top left
, center right
ve bottom
herhangi bir sorun yoktur.
Yani ne istediğinizi en yakın grafik ile yapılmış olabilir:
import matplotlib.pylab as plt
plt.figure()
ax=plt.gca()
y=[1,2,3,4,5,4,3,2,1,1,1,1,1,1,1,1]
#plt.plot([10,10,14,14,10],[2,4,4,2,2],'r')
col_labels=['col1','col2','col3']
row_labels=['row1','row2','row3']
table_vals=[[11,12,13],[21,22,23],[31,32,33]]
# the rectangle is where I want to place the table
the_table = plt.table(cellText=table_vals,
colWidths = [0.1]*3,
rowLabels=row_labels,
colLabels=col_labels,
loc='center right')
plt.text(12,3.4,'Table Title',size=8)
plt.plot(y)
plt.show()
Ve bu size
bu yardımcı olur Umut veriyor!
[this] (http://matplotlib.sourceforge.net/mpl_examples/pylab_examples/table_demo.py) örneğine bakmayı denediniz mi? Ya da benzer bir şey yapabileceksiniz (http://matplotlib.sourceforge.net/examples/pylab_examples/annotation_demo3.html), ancak ek açıklamaların yerine bir tablonuz var. – cosmosis
Evet Bu örneği gördüm. Kodu kullanmaya çalıştığımda satır renkleri ve yerleşimi atayamadım. Ayrıca sözdizimi veya çağrı için herhangi bir doc yardım bulamadım. Ek açıklamalarda olduğu gibi, tabloyu çizmek için ikinci eksenleri belirten daha fazla kontrol olduğuna inanıyorum. – user1032355