diff --git a/R/mini_plots.R b/R/mini_plots.R
index caa0348..8576df0 100644
--- a/R/mini_plots.R
+++ b/R/mini_plots.R
@@ -405,7 +405,8 @@
 #' @param xaxt On/Off for xaxis text
 #' @param yaxt On/Off for yaxis text
 #' @param ann On/Off for annotations (titles and axis titles)
-#' @param col Color for the fill of the histogram bar/boxplot box.
+#' @param col Color for mean dot.
+#' @param line_col Color for the line and the error bar.
 #' @param cex size of the mean dot and error bar size.
 #' @param frame.plot T/F for whether to plot the plot frames.
 #' @param dir Directory of where the images will be saved.
@@ -422,7 +423,7 @@
   width = 200, height = 50, res = 300,
   same_lim = TRUE, lim = NULL,
   xaxt = 'n', yaxt = 'n', ann = FALSE,
-  col = "red", cex = 0.3, frame.plot = FALSE,
+  col = "red", line_col = "black", cex = 0.3, frame.plot = FALSE,
   dir = if (is_latex()) rmd_files_dir() else tempdir(),
   file = NULL,
   file_type = if (is_latex()) "pdf" else svglite::svglite, ...) {
@@ -436,7 +437,7 @@
     dots <- listify_args(
       x = as.list(x), xmin = as.list(xmin), xmax = as.list(xmax), vline,
       width, height, res,
-      lim, xaxt, yaxt, ann, col, cex, frame.plot,
+      lim, xaxt, yaxt, ann, col, line_col, cex, frame.plot,
       dir, file, file_type,
       lengths = c(1, length(x)),
       passthru = c("x", "xmin", "xmax"))
@@ -473,7 +474,8 @@
 
   graphics::plot(x, 0, type = "p", pch = ".",
                  xlim = lim, frame.plot = frame.plot)
-  graphics::arrows(xmin, 0, xmax, 0, cex / 15, angle = 90, code = 3)
+  graphics::arrows(xmin, 0, xmax, 0, cex / 15, angle = 90, code = 3,
+                   col = line_col)
   graphics::points(x, 0, col = col, type = "p", pch = 15, cex = cex)
   if (!is.null(vline)) {
     graphics::abline(v = vline, lty = 3)
