x ekseninin etiketlerinin olduğu sözcükler veya sayılar yerine, her x işareti için etiket olarak basit bir çizim (çizgilerden ve dairelerden yapılmış) çizmek istiyorum. Mümkün mü? Eğer öyleyse, matplotlib'de bunun hakkında gitmenin en iyi yolu nedir?Bir çizimin xtick etiketlerini matplotlib kullanarak basit çizimler haline nasıl getirebilirim?
cevap
Onay etiketlerini kaldırır ve metni patches ile değiştiririm. Bu, aşağıdaki şekilde sonuçlanır
import matplotlib.pyplot as plt
import matplotlib.patches as patches
# define where to put symbols vertically
TICKYPOS = -.6
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(range(10))
# set ticks where your images will be
ax.get_xaxis().set_ticks([2,4,6,8])
# remove tick labels
ax.get_xaxis().set_ticklabels([])
# add a series of patches to serve as tick labels
ax.add_patch(patches.Circle((2,TICKYPOS),radius=.2,
fill=True,clip_on=False))
ax.add_patch(patches.Circle((4,TICKYPOS),radius=.2,
fill=False,clip_on=False))
ax.add_patch(patches.Rectangle((6-.1,TICKYPOS-.05),.2,.2,
fill=True,clip_on=False))
ax.add_patch(patches.Rectangle((8-.1,TICKYPOS-.05),.2,.2,
fill=False,clip_on=False))
:
O clip_on
False
ayarlı anahtarıdır aksi patches
eksen dışında olmayacak İşte bu işi yapmak için kısa bir örnek gösterilen. Yamaların koordinatları ve boyutları (yarıçap, genişlik, yükseklik vb.) Eksenlerinizin nerede olduğuna bağlı olacaktır. Örneğin, bunu alt yazılar ile yapmayı düşünüyorsanız, diğer herhangi bir eksenle çakışmayacak şekilde yamaları yerleştirmeye duyarlı olmanız gerekir. Transformations'u araştırmak ve başka bir birimde (Eksen, Şekil veya Gösterge) konum ve boyutları tanımlamak için zaman ayırmaya değer olabilir.
Semboller için kullanmak istediğiniz belirli görüntü dosyalarınız varsa, yamalara eksenlere eklenecek sanatçılar oluşturmak için BboxImage
sınıfını kullanabilirsiniz.
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(1,1),dpi=400)
ax = fig.add_axes([0,0,1,1],frameon=False)
ax.set_axis_off()
ax.plot(range(10),linewidth=32)
ax.plot(range(9,-1,-1),linewidth=32)
fig.savefig('thumb.png')
bu resim üreten:
O zaman kene etiketi ve boyut I istediğiniz konumda bir BboxImage yarattı Örneğin aşağıdaki komut ile basit simge yapılan istiyorum:
lowerCorner = ax.transData.transform((.8,TICKYPOS-.2))
upperCorner = ax.transData.transform((1.2,TICKYPOS+.2))
bbox_image = BboxImage(Bbox([lowerCorner[0],
lowerCorner[1],
upperCorner[0],
upperCorner[1],
]),
norm = None,
origin=None,
clip_on=False,
)
Ben, yüklenebileceğini birimleri görüntülemek için veri birimlerini dönüştürmek için transData
dönüşümü nasıl kullandığını fark h, Bbox
tanımında gereklidir.
imread
rutin kullanarak görüntüdeki okuyun ve
bbox_image
verilerine yapıp sonuçlarını (bir numpy dizi) ayarlamak ve eksenlerine sanatçı ekleyin:
bbox_image.set_data(imread('thumb.png'))
ax.add_artist(bbox_image)
Bu güncelleştirilmiş ortaya çıkan rakam :
from matplotlib.image import BboxImage,imread
from matplotlib.transforms import Bbox
:
doğrudan emin gereken sınıfları ve yöntemleri aktarmak yapmak, resimleri kullanabilirsiniz yoksa
- 1. matplotlib xtick etiketleri doğru şekilde hizalanmamış
- 2. Matplotlib, veri koordinatlarındaki çizimin dışında nasıl ek açıklama yazılır?
- 3. Bir çizimin nereye gitmesi gerektiğini nasıl belirleyebilirim?
- 4. Çizimler arasında bağlantı nasıl çizilir?
- 5. Tensorboard- supimpose 2 çizimler
- 6. Pandalar: çubuk arsa xtick frekansı
- 7. piton pandalar GroupBy XTick
- 8. AngularJS kullanarak bir koleksiyonun sırasını nasıl rastgele hale getirebilirim?
- 9. Üstte değil, dikey xtick etiketleri
- 10. Çizim için animasyon Çizik çizimler
- 11. Bir öğeyi wpf'deki önden nasıl getirebilirim?
- 12. MatPlotLib
- 13. Matplotlib
- 14. matplotlib Böyle basit arsa var biçimi
- 15. Kapsayıcısını kopyalarken en son güncellenen form öğesini Firefox'ta "sopa" haline nasıl getirebilirim?
- 16. Django'da Matplotlib nasıl kullanılır?
- 17. Bir Magento modülünde php kullanarak meta etiketlerini nasıl ayarlayabilirim?
- 18. Seaborn kullanarak basit çizgi parselleri
- 19. tarafından matplotlib kullanarak
- 20. Bootstrap'in yatay form etiketlerini CSS ile nasıl daha küçük hale getirebilirim?
- 21. Matplotlib kullanarak son çizimde bir noktayı vurgulama
- 22. Tensorflow kullanarak basit bir model nasıl oluşturulur
- 23. Bir işlev python'da bir şekil nasıl döndürür (matplotlib kullanarak)?
- 24. İki MySQL satırını nasıl bir araya getirebilirim ve bunları PHP kullanarak bir tabloda nasıl görüntülerim?
- 25. Redactor kullanarak görüntüyü yüklerken etiketlerini kaldır
- 26. Kusurumu bir dosyaya nasıl kalıcı hale getirebilirim?
- 27. Bir dizi URL'yi Promise.all ile nasıl getirebilirim?
- 28. JQuery veya CSS kullanarak MANY öğelerini nasıl seçilemez hale getirebilirim?
- 29. Jackson ek açıklamalarını kullanarak bu JSON'u nasıl seri hale getirebilirim?
- 30. Restsharp kullanarak Xml listesini nasıl seri hale getirebilirim?