error_x ignores user provided value; defaults to 10 always
Open
Nobody has claimed this yet.
- Dominant language
- R
- Stars
- 2.7k
- Forks
- 641
- PR merge metrics
- No merged PRs in 30d
Description
Using the example for coef plots here, I find that no matter what values are provided o error_x = ~ ... , the plot always shows error bars at 10% of the point-estimate.
Brief description of the problem
library(plotly)
#> Loading required package: ggplot2
#>
#> Attaching package: 'plotly'
#> The following object is masked from 'package:ggplot2':
#>
#> last_plot
#> The following object is masked from 'package:stats':
#>
#> filter
#> The following object is masked from 'package:graphics':
#>
#> layout
library(ggplot2)
fit <- lm(mpg ~ cyl + disp + wt, mtcars)
summary(fit)
#>
#> Call:
#> lm(formula = mpg ~ cyl + disp + wt, data = mtcars)
#>
#> Residuals:
#> Min 1Q Median 3Q Max
#> -4.4035 -1.4028 -0.4955 1.3387 6.0722
#>
#> Coefficients:
#> Estimate Std. Error t value Pr(>|t|)
#> (Intercept) 41.107678 2.842426 14.462 1.62e-14 ***
#> cyl -1.784944 0.607110 -2.940 0.00651 **
#> disp 0.007473 0.011845 0.631 0.53322
#> wt -3.635677 1.040138 -3.495 0.00160 **
#> ---
#> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#>
#> Residual standard error: 2.595 on 28 degrees of freedom
#> Multiple R-squared: 0.8326, Adjusted R-squared: 0.8147
#> F-statistic: 46.42 on 3 and 28 DF, p-value: 5.399e-11
# Plots Don't Agree. Plotly shows incoprrect error bars
goodplot <- GGally::ggcoef(fit, sort = "ascending")
#> Registered S3 method overwritten by 'GGally':
#> method from
#> +.gg ggplot2
badplot <- fit %>% broom::tidy() %>%
mutate(term = forcats::fct_reorder(term, estimate)) %>%
plot_ly(x = ~ estimate, y = ~ term) %>%
add_markers(
error_x = ~ list(value = std.error),
color = I("black"),
hoverinfo = "x"
)
Created on 2020-03-02 by the reprex package (v0.3.0)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the reprex's add_markers() call and its error_x = ~ list(value = std.error) mapping, then trace how the R interface handles user-provided error-bar values. Reproduce the plot using the mtcars model and confirm that the supplied standard errors are rendered instead of default 10% values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- plotly, r
- Domain
- data-visualization
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100