Mam zestaw obrazów PNG 150x150px i zestaw współrzędnych (x, y), których odpowiadają. Czy istnieje sposób na wykreślenie obrazów na siatce? Na przykład, szukam rozwiązania R lub Python, aby stworzyć coś podobnego, co następuje: Umieszczanie obrazów niestandardowych w oknie wydruku - jako niestandardowych znaczników danych lub do oznaczania ich znaczników
Odpowiedz
utworzyć obwiednię przez instancji AnnotationBbox --once dla każdego obrazu który chcesz wyświetlić ; obraz i jego współrzędne są przekazywane do konstruktora.
Kod jest oczywiście powtarzalny dla dwóch obrazów, więc gdy ten blok zostanie umieszczony w funkcji, nie jest tak długi, jak się wydaje.
import matplotlib.pyplot as PLT
from matplotlib.offsetbox import AnnotationBbox, OffsetImage
from matplotlib._png import read_png
fig = PLT.gcf()
fig.clf()
ax = PLT.subplot(111)
# add a first image
arr_hand = read_png('/path/to/this/image.png')
imagebox = OffsetImage(arr_hand, zoom=.1)
xy = [0.25, 0.45] # coordinates to position this image
ab = AnnotationBbox(imagebox, xy,
xybox=(30., -30.),
xycoords='data',
boxcoords="offset points")
ax.add_artist(ab)
# add second image
arr_vic = read_png('/path/to/this/image2.png')
imagebox = OffsetImage(arr_vic, zoom=.1)
xy = [.6, .3] # coordinates to position 2nd image
ab = AnnotationBbox(imagebox, xy,
xybox=(30, -30),
xycoords='data',
boxcoords="offset points")
ax.add_artist(ab)
# rest is just standard matplotlib boilerplate
ax.grid(True)
PLT.draw()
PLT.show()
To jest świetne, czy wiesz, jak usunąć granicę? –
@JohnM Pass 'frameon = False' na' AnnotationBbox() ' – bdforbes
użyłbym matplotlib za to. this demo pokazuje coś podobnego, jestem pewien, że to może być dostosowany do konkretnego problemu
Jednym ze sposobów, aby to zrobić w R (2.11.0 lub nowszej):?
library("png")
# read a sample file (R logo)
img <- readPNG(system.file("img", "Rlogo.png", package="png"))
# img2 <- readPNG(system.file("img", "Rlogo.png", package="png"))
img2 <- readPNG("hand.png", TRUE) # here import a different image
if (exists("rasterImage")) {
plot(1:1000, type='n')
rasterImage(img, 100, 100, 200, 200)
rasterImage(img2, 300, 300, 400, 400)
}
zobaczyć readPNG i rasterImage dla Detale.
W R, odczytany w pomocy (rasterImage):
require(grDevices)
#set up the plot region:
op <- par(bg = "thistle") <h>
plot(c(100, 250), c(300, 450), type = "n", xlab="", ylab="")
image <- as.raster(matrix(0:1, ncol=5, nrow=3))
rasterImage(image, 100, 300, 150, 350, interpolate=FALSE)
rasterImage(image, 100, 400, 150, 450)
rasterImage(image, 200, 300, 200 + xinch(.5), 300 + yinch(.3), interpolate=FALSE)
rasterImage(image, 200, 400, 250, 450, angle=15, interpolate=FALSE)
par(op)
.... to dobry przykład.
Również w R możesz użyć funkcji my.symbols i ms.image w pakiecie TeachingDemos.
- 1. Dodawanie niestandardowych znaczników html do Intellij?
- 2. Konsekwencje niestandardowych znaczników HTML w dyrektywach AngularJS
- 3. Dodawanie niestandardowych znaczników CSS do dokumentu html RMarkdown
- 4. Kątowa ikona niestandardowych znaczników Google map
- 5. Google Maps: wiele niestandardowych znaczników HTML
- 6. ładowanie niestandardowych filtrów znaczników z innej aplikacji
- 7. Używanie znaczników YAML do oznaczania typów
- 8. Dynamiczne dodawanie niestandardowych znaczników do map przy użyciu OpenLayers
- 9. MVC 3 Razor, pomocnicy z niestandardowych znaczników/sekcji
- 10. Umieszczanie kalendarza Google w niestandardowych kolorach kalendarza
- 11. Zmiana danych w oknie informacyjnym przy użyciu znaczników Google Map
- 12. Używanie zewnętrznych obrazów do niestandardowych kursorów CSS
- 13. Używanie niestandardowych kafelków obrazów mapy w LeafletJS?
- 14. dodawać własne atrybutów znaczników HTML do
- 15. Dodawanie niestandardowych przycisków do edytora WMD
- 16. Najlepszy sposób na wstępne ładowanie znaczników obrazów SVG?
- 17. Wyszukiwanie znaczników metadanych w Sharepoint
- 18. Mustachejs renderowanie znaczników html jako html
- 19. Usuwanie znaczników html w sed lub podobnych
- 20. Czy można użyć obrazów niestandardowych dla elementów UML w PlantUML?
- 21. Przekazywanie znaczników HTML do kierownicy
- 22. Wyłącza usuwanie znaczników
- 23. Używanie znaczników w Swift
- 24. Dodawanie wielu znaczników w Google Maps Api v2
- 25. Lista wszystkich niestandardowych danych przechowywanych w AppDomain
- 26. Mylić o niestandardowych typach danych w Haskell
- 27. Hierarchie znaczników i obsługa
- 28. Wyświetlanie niestandardowych obrazów w opcjach konfiguracji "narzędzi" ext.grid.panel
- 29. Sposób lokalizowania znaczników wyrównania w obrazie
- 30. Pokaż podpowiedź przy aktywowaniu niestandardowych znacznik
Powiązane: http://stackoverflow.com/questions/11487797/python-matplotlib-basemap-overlay-small-image-on-map-plot –