Mam lokalny obraz, który chciałbym dołączyć do .Rmd
pliku, który następnie knit
przekonwertuję na slajdy HTML Pandoc
. W tym poście spowoduje to wstawienie obrazu lokalnego:
![Image Title](path/to/your/image)
Czy istnieje sposób na zmodyfikowanie tego kodu, aby ustawić również rozmiar obrazu?
Odpowiedzi:
Możesz również odczytać obraz, używając
png
na przykład pakietu i wykreślić go jak zwykły wydruk, używającgrid.raster
zgrid
pakietu.Dzięki tej metodzie masz pełną kontrolę nad rozmiarem obrazu.
źródło
img <- readPNG("path/to/your/image")
ale nie udało mi się edytować rozwiązania.path/to/your/image
Twoje pytanie. Tak, nazwa ścieżki jest ciągiem i potrzebujesz cudzysłowów, aby zdefiniować ciąg. Mam nadzieję, że wszystko jasne.Pytanie jest stare, ale wciąż poświęca się mu wiele uwagi. Ponieważ istniejące odpowiedzi są nieaktualne, tutaj bardziej aktualne rozwiązanie:
Zmiana rozmiaru obrazów lokalnych
Od
knitr
1.12 dostępna jest funkcjainclude_graphics
. Od?include_graphics
(wyróżnienie moje):Przykład:
Zalety:
W tym wygenerowane obrazy
Aby skomponować ścieżkę do wykresu, który jest generowany w porcji (ale nie jest uwzględniony), przydatne mogą być opcje porcji
opts_current$get("fig.path")
(ścieżka do katalogu figury), a takżeopts_current$get("label")
(etykieta bieżącej porcji). W poniższym przykładziefig.path
uwzględniono drugi z dwóch obrazów, które zostały wygenerowane (ale nie zostały wyświetlone) w pierwszej porcji:Ogólny wzorzec ścieżek do rysunków to
[fig.path]/[chunklabel]-[i].[ext]
, gdziechunklabel
jest etykietą fragmentu, w którym wygenerowanoi
wykres , jest indeksem wykresu (w tym fragmencie) iext
jest rozszerzeniem pliku (domyślniepng
w dokumentach RMarkdown).źródło
out.width='100pt'
przeciwnym razie lateks wyświetli błąd dotyczący niedozwolonej jednostki miary.r, echo=FALSE, ...
Niezaktualizowana odpowiedź: w
knitr 1.17
możesz po prostu użyćedytuj zgodnie z komentarzem z @jsb
Zauważ, że działa to tylko bez spacji, np. {Width = 250px} nie {width = 250px}
źródło
{width=250px}
Nie{width = 250px}
.xaringan
zknitr_1.21
.Oto kilka opcji, które utrzymują samowystarczalność pliku bez ponownego przetwarzania obrazu:
Umieść obraz w
div
znacznikachUżyj arkusza stylów
test.Rmd
test.css
Jeśli masz więcej niż jeden obraz, może być konieczne użycie pseudo-selektora podrzędnego n-tego dla tej drugiej opcji.
źródło
<div> ... </div>
Rozwiązanie wydaje się bardzo proste. Jakie jeststyle
ustawienie przeskalowania obrazu do stałego procentu przy zachowaniu współczynnika proporcji?Jeśli konwertujesz do formatu HTML, możesz ustawić rozmiar obrazu za pomocą składni HTML, używając:
lub jakąkolwiek wysokość i szerokość chcesz podać.
źródło
Miałem ten sam problem dzisiaj i znalazłem inną opcję
knitr 1.16
podczas robienia na drutach do PDF (co wymaga zainstalowania pandoc):![Image Title](path/to/your/image){width=70%}
Ta metoda może wymagać nieco prób i błędów, aby znaleźć odpowiedni rozmiar. Jest to szczególnie wygodne, ponieważ sprawia, że umieszczanie dwóch obrazów obok siebie jest ładniejszym procesem. Na przykład:
![Image 1](path/to/image1){width=70%}![Image 2](path/to/image2){width=30%}
Możesz wykazać się kreatywnością i ułożyć kilka z nich obok siebie i dopasować je według własnego uznania. Więcej pomysłów i przykładów można znaleźć pod adresem https://rpubs.com/RatherBit/90926 .
źródło
Inną opcją, która działała dla mnie, jest gra z opcją dpi w
knitr::include_graphics()
ten sposób:... co z pewnością (chyba że wykonasz obliczenia matematyczne) jest metodą prób i błędów w porównaniu do definiowania wymiarów w porcji, ale może to komuś pomoże.
źródło
Rozwiązanie knitr :: include_graphics działało dobrze przy zmianie rozmiaru figur, ale nie byłem w stanie dowiedzieć się, jak go użyć do tworzenia obok siebie figur o zmienionym rozmiarze. Uważam, że ten post jest do tego przydatny.
źródło