You might consider using the ragg package for you screen renders (and the agg_tiff function).  I think these replace grDevice with something that may render to produce something closer to what the ggsave() render will look like.

On 7/23/2026 3:18 PM, Sorkin, John wrote:
I am running R in RStudio. I am creating a graph, which I see in the plot 
window, and I use ggsave() to save a copy of the graph in a file.

When I use look at the graph is RStudio's Plots window, the graph looks fine. 
When I click on the Plot window's export button, copy the plot to the clipboard 
and paste the graph into MS word, the graph looks fine. Please see first figure 
on attached MS word document.

When I copy and paste the .tiff file saved by ggsave, the graph looks bad. 
Second figure on the attached MS word document. I think the graphs is being 
exported improperly by ggsave. I would appreciate any suggestions for improving 
the quality of the graph produced by ggsave.

Please see code below and attached MS word document




# Code to produce graph
  ## Plot
   zz <- ggplot(
     df.long,
     aes(
       x = Date,
       y = NumPeopleExposed,
       color = factor(criticalvalue),
       linetype = factor(criticalvalue),
       group = factor(criticalvalue)
     )
   ) +
     geom_point(size = 3) +
     geom_line(linewidth = 1.5) +
scale_linetype_manual(
       values = c(
         "solid",
         "dashed",
         "dotted",
         "dotdash",
         "longdash",
         "twodash"
       )
     ) +
labs(
       title = species,
       x = "Date",
       y = "Number of People Exposed to Toxic Concentration",
       color = "Critical Value",
       linetype = "Critical Value"
     ) +
## Show every date on x-axis
     scale_x_date(
       breaks = sort(unique(df.long$Date)),
       date_labels = "%Y-%m-%d"
     ) +
theme_bw() + theme(
       axis.text.x = element_text(
         angle = 45,
         hjust = 1,
         vjust = 1
       )
     )
     print(zz)

Code to save the graph
  current_time <- Sys.time()
   current_time
   # Convert colons to dashes, remove spaces
   formatted_time <- gsub(":", "-", format(current_time, "%Y-%m-%d_%H-%M-%S"))
   formatted_time
#species="JDS"
   # Save graph
   mypath <- file.path("C:","Users","JSorkin","OneDrive - University of Maryland School of 
Medicine","HalemMilton","PaperAndAbstract")
   mypath
myfilename <- paste0(species2,formatted_time,".tiff")
   myfilename
ggsave(plot=zz,
          path=mypath,
          filename=myfilename,
          device="tiff",
          width=4,height=3,
          units="in",
          dpi=600)

   cat("Ending (12) Plot Fraction Exposed\n")
   }




John David Sorkin M.D., Ph.D.
Professor of Medicine, University of Maryland School of Medicine;
Associate Director for Biostatistics and Informatics, Baltimore VA Medical 
Center Geriatrics Research, Education, and Clinical Center;
Former PI Biostatistics and Informatics Core, University of Maryland School of 
Medicine Claude D. Pepper Older Americans Independence Center;
Senior Statistician University of Maryland Center for Vascular Research;

Division of Gerontology, Geriatrics and Palliative Medicine,
10 North Greene Street
GRECC (BT/18/GR)
Baltimore, MD 21201-1524
Cell phone 443-418-5382


______________________________________________
[email protected] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide https://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

--
---
Robert W. Baer, Ph.D.
Professor of Physiology
Kirksville College of Osteopathic Medicine
A.T. Still Univerisity of Health Sciences
800 W. Jefferson St.
Kirksville, MO 63501

______________________________________________
[email protected] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide https://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to