Shiny Application actionButton click on page load

Here is an example that should be close to what you want. The trick is to use a submitButton. The wordcloud will have a default plot based on initial input, but will change when you change the text and press the submit button.

library(shiny)
library(wordcloud)

ui <- shinyUI(fluidPage(

   titlePanel("Old Faithful Geyser Data"),

   sidebarLayout(
      sidebarPanel(
        textInput("text", "Input Text", "Random text random text random is no yes"),
        submitButton("Submit")
      ),

      mainPanel(  
          tabsetPanel(
              tabPanel("Tab1", 
                       plotOutput("hist"),
                       tableOutput("hist_table")),
              tabPanel("Tab2",
                       plotOutput("wordcloud"))
          )
      )
   )
))

server <- shinyServer(function(input, output) {

    observe({
        word_list = strsplit(input$text, " ")
        word_table = as.data.frame(table(word_list))

        output$hist = renderPlot({
            barplot(table(word_list))
        })
        output$hist_table = renderTable({
            word_table
        })
        output$wordcloud = renderPlot({
            wordcloud(word_table[,1], word_table[,2])
        })
    })

})

shinyApp(ui = ui, server = server)

Since the use of submitButton() is generally discouraged in favour of the more versatile actionButton() (see here for function documentation), here is a version of the answer above that uses a combination of actionButton() and eventReactive() with ignoreNULL = FALSE so that the plots show up upon launching the app.

library(shiny)
library(wordcloud)

ui <- fluidPage(
  sidebarLayout(

    sidebarPanel(
      textInput("text", "Input Text", "Random text random text random is no yes"),
      actionButton("submit", "Submit")
    ),

    mainPanel(
      tabsetPanel(
        tabPanel(
          "Tab1",
          plotOutput("hist"),
          tableOutput("hist_table")
        ),
        tabPanel(
          "Tab2",
          plotOutput("wordcloud")
        )
      )
    )
  )
)

server <- shinyServer(function(input, output) {
  word_list <- eventReactive(input$submit,{
    strsplit(input$text, " ")
    },
    ignoreNULL = FALSE
  )

  word_table <- reactive(
    as.data.frame(table(word_list()))
  )

  output$hist <- renderPlot({
    barplot(table(word_list()))
  })
  output$hist_table <- renderTable({
    word_table()
  })
  output$wordcloud <- renderPlot({
    wordcloud(word_table()[, 1], word_table()[, 2])
  })

})

shinyApp(ui = ui, server = server)