光散乱アプリで散布図に相関係数を入れる必要があります。以下は私の問題を説明するために作った例です。相関テキストはプロット上には表示されません。チェックボックスは応答していないようです。私は長い時間を取って理由を理解しようとしましたが、できませんでした。私が間違ったことを誰にでも教えてもらえますか?事前にどうもありがとうございました。光るアプリに散乱プロットの相関係数を入力できません
#--------------------functions------------------------------------------
corr_eqn <- function(x,y, method='pearson', digits = 2) {
corr_coef <- round(cor.test(x, y, method=method)$estimate, digits = digits)
corr_pval <- tryCatch(format(cor.test(x,y, method=method)$p.value,
scientific=TRUE),
error=function(e) NA)
paste(method, 'r = ', corr_coef, ',', 'pval =', corr_pval)
}
sca.plot <- function (cor.coef=TRUE) {
df <- mtcars %>% filter(cyl==4)
p<- df %>%
ggplot(aes(x=hp, y=mpg))+
geom_point()+
geom_smooth()
if (cor.coef) {
p<- p+geom_text(x=0.9*max(mtcars$hp),
y=0.9*max(mtcars$mpg),
label = corr_eqn(df[['hp']],df[['mpg']],
method='spearman'))
}
return (p)
}
#-------------------------ui----------------------------
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
checkboxInput('cor.cplot',
label = h5('Correlation Coefficient'), value = TRUE)
),
mainPanel(
plotOutput('plot')
)
)
)
#---------------------------server---------------------------------
server <- function(input, output) {
output$plot <- renderPlot ({
sca.plot(cor.coef = input$cor.cplot)
})
}
runApp(shinyApp(ui, server))