2016-10-21 9 views
0

密度のヒストグラムを作成しようとしていますが、エラーが発生しています。引数 'x'は数値でなければなりません。私はas.numeric(input $ d)をdの代わりに使用しようとしましたが、同じエラーが発生しました。誰もこれを解決する方法を知っていますか?エラー:引数

server.R

output$hist <- renderPlot({ 

    input$action 

    if(is.null(input$action)) 
    return(NULL) 

    else 

    isolate({ 

     trees3 <- FindTreesCHM(chm(), (as.numeric(input$fws)), (as.numeric(input$minht))) 
     d <- density(trees3["height"]) 
     plot(d, xlab = "Height", ylab = "Density", main = "") 
     polygon((as.numeric(input$d)), col = "darkseagreen") 

    }) 
    }) 

はあなたにたくさんありがとうございました! :)

答えて

0

d <- density(trees3["height"])に問題があると思います。 density関数の最初の引数はxであり、数値でなければなりません。 [[]]の代わりに[]を使用しています。 []は要素のリストを返し、[[]]は単一の要素をリストに返します。だから

d <- density(trees3[["height"]])

d <- density(trees3["height"])

を変更してみてください。

また、あなたのコードにelseが必要とは思われません。しかし、if...elseステートメントを使用する必要がある場合は、次の点を確認してください。

It is important to note that else must be in the same line as the closing braces of the if statements. http://www.programiz.com/r-programming/if-else-statement

+0

Hey Geovany!私は完全にあなたのポイントを参照してください、それは男がうまくいった!私は本当にあなたの助けに感謝します。しかしここに疑問があります。あなたが[[]]を使ってhatと言うと、リストの単一の要素が返されます。私はプロットする列全体をキャプチャしたいと思います。私の混乱については残念です。どうもありがとう! –

+0

それがあなたを助けることを知ってうれしい。リスト内の単一の要素。したがって、リストに格納されている1つの値、ベクトル、またはその他の構造体になります。この場合、列全体になります。 '[[" heigh "]] [n]' – Geovany

+0

ああ、私はGeovanyを手に入れました!あなたの助けと説明に感謝します! :) –