I am trying to incorporate an html page with an image in the top-left into R shiny and call from R studio. The issue is that the img command gets executed when the html file runs displaying the image but when Run in R, I just see a blank image space but no image gets displayed as in the snap below. Attached is the html and R code with snapshot in R.
#HTML code
<html>
<head><title>
Dashboard
</title>
<meta name="viewport" content="width=device-width,initial-scale=1,user-
scalable=no">
<header>
<img src="C:/D DRIVE DATA/reliance R/Final Template
/wireframe/www/pepsi.png" height="43" width="145">
</img></header></head></html>
#R code
## app.R ##
library(shiny)
library(shinydashboard)
ui=
dashboardBody(
tags$link(rel="stylesheet", type="text/css",href="bootstrap.css",
htmlTemplate("template.html"
))
)
server= function(input, output)
{}
shinyApp(ui,server)
When you want to allow a Shiny app to give the user's browser access to images, CSS, etc., those objects needs to be in the www
subdirectory of the app (or a further subdirectory of www
).
I haven't found a good reference in the documentation for this, but this article on styling Shiny using CSS covers the concept pretty well. Basically you need a www
subdirectory in the same directory with your app.R
, and then you can reference files within that subdirectory using relative paths.
For example, your app directory may contain
app.R
www/
and www
could contain
pepsi.png
some_stylesheet.css
..etc..
then using <img src="pepsi.png" ..>
should work.