cowplot
пакет сделал это несколько проще.
Постройте сюжет:
library(ggridges)
library(ggplot2)
p <- ggplot(iris, aes(x = Sepal.Length, y = Species)) + geom_density_ridges()
Загрузите изображения и используйте axis_canvas()
для построения полосы вертикальных изображений:
library(cowplot)
pimage <- axis_canvas(p, axis = 'y') +
draw_image("https://upload.wikimedia.org/wikipedia/commons/thumb/9/9f/Iris_virginica.jpg/295px-Iris_virginica.jpg", y = 2.5, scale = 0.5) +
draw_image("https://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Iris_versicolor_3.jpg/320px-Iris_versicolor_3.jpg", y = 1.5, scale = 0.5) +
draw_image("https://upload.wikimedia.org/wikipedia/commons/thumb/5/56/Kosaciec_szczecinkowaty_Iris_setosa.jpg/450px-Kosaciec_szczecinkowaty_Iris_setosa.jpg", y = 0.5, scale = 0.5)
# insert the image strip into the plot
ggdraw(insert_yaxis_grob(p, pimage, position = "left"))
Без axis.text.y
:
p <- ggplot(iris, aes(x = Sepal.Length, y = Species)) + geom_density_ridges() +
theme(axis.text.y = element_blank())
ggdraw(insert_yaxis_grob(p, pimage, position = "left"))
Вы можете удалить также вертикальную линию, В настоящее время я не могу найти способ размещения полосы изображения на левой стороне линии оси.
Я думаю Context.RewritePath()
более оптимальный вариант. Причина:
Server.Transfer()
броски a ThreadAbortException
каждый раз. Результат вызова Response.End()
.
Для получения дополнительной информации прочитайте следующие статьи MS:
Больше информации:
Server.Transfer()
не отправляет команду перенаправления HTTP 302 как Response.Redirect()
сделал бы.
По данным HttpContext. RewritePath на MSDN, RewritePath()
используется в состоянии сеанса без cookie.
Кроме того, на другом предмете, Server.Transfer()
и Server.Execute()
очень отличаются:
Server.Execute()
возвраты сразу управляют к начальной странице после, где это назвали.
Например:
<div>
test 1 <br/>
<% Server.Execute("include.aspx?hello=ok"); %>
test 2 <br/>
</div>
Произвел бы:
тест 1
содержание include.aspx? hello=ok
тест 2
Избегать исключения, выданного Сервером. Передача, можно использовать Сервер. Выполниться. Оба Сервера. Передача и Сервер. Выполнитесь НЕ выпускают 302 сообщения HTTP. Только Ответ. Перенаправление выпускает этот заголовок и просит, чтобы браузер перешел к новому месту назначения, утверждая, что это было временно перемещено. Оба Сервера. Передача и Сервер. Выполнитесь позволяют Вам выполнять другую страницу для обслуживания текущего запроса.
Контекст. RewritePath Присваивается, внутреннее переписывают путь, и допускает URL, который требуют отличаться от внутреннего пути до ресурса. RewritePath используется в состоянии сеанса без cookie.
Принимая во внимание, что Server.transfer передает содержание, собранное для обработки одной страницы к другой странице.