[R] Problems with line types in plots saved as PDF files

Berend Hasselman bhh at xs4all.nl
Wed Feb 20 13:36:13 CET 2013


On 20-02-2013, at 12:58, Eik Vettorazzi <E.Vettorazzi at uke.de> wrote:

> Hi Ian,
> besides encouraging alternative pdf viewers, you just could thin out
> your interpolation grid, such as
> b = seq(-10, 10, 0.02) #instead of 0.0002
> and everything goes fine even with AcroRead XI.
> 

When I received the original mail this morning Mail.app on OS X 10.8.2 locked up completely when I tried to access the mail.
Both Preview and QuickLook became totally unresponsive.

With the above change  a(0.02 instead of 0.0002) all goes smoothly now.

Berend


> Cheers
> 
> Am 20.02.2013 01:09, schrieb Ian Renner:
>> Hi,
>> 
>> I am trying to save a plot as a PDF with different line types. In the example below, R displays the plot correctly with 2 curves in solid lines, 2 curves in dashed lines and 1 curve as a dotted line. However, when I save the image as PDF (as attached), the dashed lines become solid. This also happens if I use the pdf command directly (by removing the # symbols).
>> 
>> Is there any way around this? Saving the image as a JPEG or PNG file works fine but the image quality is not desirable.
>> 
>> b.hat = 6
>> a.1 = -12
>> a.2 = 0
>> a.3 = 200
>> 
>> b = seq(-10, 10, 0.0002)
>> l = a.1*(b - b.hat)^2 + a.2*(b - b.hat) + a.3
>> 
>> lambda = 20
>> 
>> p = -lambda*abs(b)
>> 
>> pen.like = l + p
>> 
>> y.min = 3*min(p)
>> y.max = max(c(l, p, pen.like))
>> 
>> #pdf(file = "TestPlot.pdf", 6, 6)
>> #{
>> plot(b, l, type = "l", ylim = c(y.min, y.max), lwd = 2, xlab = expression(beta), ylab = "", col = "green", yaxt = "n", xaxt = "n")
>> points(b, p, type = "l", lty = "dotted", lwd = 2, col = "red")
>> points(b, pen.like, type = "l", lwd = 2, lty = "dashed", col = "green")
>> 
>> axis(1, at = c(0))
>> axis(2, at = c(0))
>> 
>> lambda.hat = which.max(pen.like)
>> lambda.glm = which(b == b.hat)
>> 
>> points(b[lambda.glm], l[lambda.glm], pch = 16, cex = 1.5)
>> points(b[lambda.hat], l[lambda.hat], pch = 17, cex = 1.5)
>> 
>> b.hat = -3
>> a.1 = -1.5
>> a.2 = 0
>> a.3 = 120
>> 
>> l = a.1*(b - b.hat)^2 + a.2*(b - b.hat) + a.3
>> 
>> pen.like = l + p
>> 
>> points(b, l, type = "l", lwd = 2, col = "blue")
>> points(b, pen.like, type = "l", lwd = 2, lty = "dashed", col = "blue")
>> 
>> lambda.hat = which.max(pen.like)
>> lambda.glm = which(b == b.hat)
>> 
>> points(b[lambda.glm], l[lambda.glm], pch = 16, cex = 1.5)
>> points(b[lambda.hat], l[lambda.hat], pch = 17, cex = 1.5)
>> 
>> abline(h = 0)
>> abline(v = 0)
>> 
>> #}
>> 
>> #dev.off()
>> 
>> 
>> Thanks,
>> 
>> Ian
>> 
>> 
>> 
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>> 
> 
> 
> -- 
> Eik Vettorazzi
> 
> Department of Medical Biometry and Epidemiology
> University Medical Center Hamburg-Eppendorf
> 
> Martinistr. 52
> 20246 Hamburg
> 
> T ++49/40/7410-58243
> F ++49/40/7410-57790
> --
> Pflichtangaben gemäß Gesetz über elektronische Handelsregister und Genossenschaftsregister sowie das Unternehmensregister (EHUG):
> 
> Universitätsklinikum Hamburg-Eppendorf; Körperschaft des öffentlichen Rechts; Gerichtsstand: Hamburg
> 
> Vorstandsmitglieder: Prof. Dr. Martin Zeitz (Vorsitzender), Dr. Alexander Kirstein, Joachim Prölß, Prof. Dr. Dr. Uwe Koch-Gromus
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list