as.Date and ylim in empty plot

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

as.Date and ylim in empty plot

Ogbos
Dear Experts,
I generated the plot attached. Every other thing is OK except the black
horizontal lines which should appear like points or dots as the coloured
ones. I can't understand why.

I tried to change it to look like dots by calling empty plots so that I
will add them as points.

Since I have a range of date that can fall any where within 2005, I tried:

plot(1, type="n", xlab="", ylab="",
xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")), ylim=c(-.5, -10))

ylim worked fine but xlim instead of appearing like date as indicated on
the x-axes of the attached plot, translated to ordinary numbers (12800,
12900,13000, 13100).

All the data is of the same format:
2005-01-04 -2.76105935648091
2005-01-19 -9.60813496025994
2005-01-22 -7.92101965866777
2005-02-19 -1.61308152604905
2005-02-24 -1.51497015807712
2005-05-09 -2.06465797304654
2005-05-11 -1.14840389007051
2005-05-16 -3.85281900888504
2005-06-13 -1.18659683796617
2005-06-17 -3.48787712566258
2005-06-22 -1.14223758296308
2005-07-18 -4.96013018907366
2005-08-03 -1.24313324914368
2005-08-07 -2.96672894841722
2005-08-10 -1.11868063781156
2005-08-25 -1.46453734930983
2005-09-13 -8.00895215754776
2005-09-15 -6.63439065989452
2005-10-13 -2.25054996925846
2005-12-15 -1.08933890547705

Thank you so much for your input.

Best regards
Ogbos
______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
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.
Reply | Threaded
Open this post in threaded view
|

Re: as.Date and ylim in empty plot

R help mailing list-2
I'm a little surprised at some of what happens, but you can get date labels on the x axis like this:

drng <- as.Date( c('2005-1-1' , '2005-12-31') )
plot(1, type="n", xlab="", ylab="", xaxt='n', xlim=drng, ylim=c(-.5, -10))
axis(1, at= pretty(drng), lab=format(pretty(drng)))

and if you prefer some other date format, specify it in the call to format()

Did you intend to reverse the direction of your  y axis?

-Don
--
Don MacQueen
Lawrence Livermore National Laboratory
7000 East Ave., L-627
Livermore, CA 94550
925-423-1062
Lab cell 925-724-7509
 
 

´╗┐On 9/19/18, 7:55 AM, "R-help on behalf of Ogbos Okike" <[hidden email] on behalf of [hidden email]> wrote:

    Dear Experts,
    I generated the plot attached. Every other thing is OK except the black
    horizontal lines which should appear like points or dots as the coloured
    ones. I can't understand why.
   
    I tried to change it to look like dots by calling empty plots so that I
    will add them as points.
   
    Since I have a range of date that can fall any where within 2005, I tried:
   
    plot(1, type="n", xlab="", ylab="",
    xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")), ylim=c(-.5, -10))
   
    ylim worked fine but xlim instead of appearing like date as indicated on
    the x-axes of the attached plot, translated to ordinary numbers (12800,
    12900,13000, 13100).
   
    All the data is of the same format:
    2005-01-04 -2.76105935648091
    2005-01-19 -9.60813496025994
    2005-01-22 -7.92101965866777
    2005-02-19 -1.61308152604905
    2005-02-24 -1.51497015807712
    2005-05-09 -2.06465797304654
    2005-05-11 -1.14840389007051
    2005-05-16 -3.85281900888504
    2005-06-13 -1.18659683796617
    2005-06-17 -3.48787712566258
    2005-06-22 -1.14223758296308
    2005-07-18 -4.96013018907366
    2005-08-03 -1.24313324914368
    2005-08-07 -2.96672894841722
    2005-08-10 -1.11868063781156
    2005-08-25 -1.46453734930983
    2005-09-13 -8.00895215754776
    2005-09-15 -6.63439065989452
    2005-10-13 -2.25054996925846
    2005-12-15 -1.08933890547705
   
    Thank you so much for your input.
   
    Best regards
    Ogbos
    ______________________________________________
    [hidden email] mailing list -- To UNSUBSCRIBE and more, see
    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.
   

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
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.
Reply | Threaded
Open this post in threaded view
|

Re: as.Date and ylim in empty plot

David Winsemius
In reply to this post by Ogbos

> On Sep 19, 2018, at 7:55 AM, Ogbos Okike <[hidden email]> wrote:
>
> Dear Experts,
> I generated the plot attached. Every other thing is OK except the black
> horizontal lines which should appear like points or dots as the coloured
> ones. I can't understand why.
>
> I tried to change it to look like dots by calling empty plots so that I
> will add them as points.
>
> Since I have a range of date that can fall any where within 2005, I tried:
>
> plot(1, type="n", xlab="", ylab="",
> xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")), ylim=c(-.5, -10))
>
> ylim worked fine but xlim instead of appearing like date as indicated on
> the x-axes of the attached plot, translated to ordinary numbers (12800,
> 12900,13000, 13100).
>
> All the data is of the same format:
> 2005-01-04 -2.76105935648091
> 2005-01-19 -9.60813496025994
> 2005-01-22 -7.92101965866777
> 2005-02-19 -1.61308152604905
> 2005-02-24 -1.51497015807712
> 2005-05-09 -2.06465797304654
> 2005-05-11 -1.14840389007051
> 2005-05-16 -3.85281900888504
> 2005-06-13 -1.18659683796617
> 2005-06-17 -3.48787712566258
> 2005-06-22 -1.14223758296308
> 2005-07-18 -4.96013018907366
> 2005-08-03 -1.24313324914368
> 2005-08-07 -2.96672894841722
> 2005-08-10 -1.11868063781156
> 2005-08-25 -1.46453734930983
> 2005-09-13 -8.00895215754776
> 2005-09-15 -6.63439065989452
> 2005-10-13 -2.25054996925846
> 2005-12-15 -1.08933890547705
You did not succeed in creating a plot that the rhelp mail server would accept. My guess is that the first column is a factor variable and that you did not use colClasses when doing your data input.

dd <- read.table(text="2005-01-04 -2.76105935648091
2005-01-19 -9.60813496025994
2005-01-22 -7.92101965866777
2005-02-19 -1.61308152604905
2005-02-24 -1.51497015807712
2005-05-09 -2.06465797304654
2005-05-11 -1.14840389007051
2005-05-16 -3.85281900888504
2005-06-13 -1.18659683796617
2005-06-17 -3.48787712566258
2005-06-22 -1.14223758296308
2005-07-18 -4.96013018907366
2005-08-03 -1.24313324914368
2005-08-07 -2.96672894841722
2005-08-10 -1.11868063781156
2005-08-25 -1.46453734930983
2005-09-13 -8.00895215754776
2005-09-15 -6.63439065989452
2005-10-13 -2.25054996925846
2005-12-15 -1.08933890547705", colClasses=c("Date","numeric")
)


No problems with:

 plot(dd[[1]], dd[[2]], xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")))



(Not a particularly good test of the use of an xlim argument since nothing was excluded.)

PDF's are accepted. PNGs are not.

--
David.

>
> Thank you so much for your input.
>
> Best regards
> Ogbos
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> 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.
David Winsemius
Alameda, CA, USA

'Any technology distinguishable from magic is insufficiently advanced.'   -Gehm's Corollary to Clarke's Third Law






______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
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.

Rplots.pdf (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: as.Date and ylim in empty plot: RESOLVED

Ogbos
Hi David,
That's it!!! The outcome is attached.

Many thanks please.

Best
Ogbos

On Wed, Sep 19, 2018 at 11:34 PM David Winsemius <[hidden email]>
wrote:

>
> > On Sep 19, 2018, at 7:55 AM, Ogbos Okike <[hidden email]>
> wrote:
> >
> > Dear Experts,
> > I generated the plot attached. Every other thing is OK except the black
> > horizontal lines which should appear like points or dots as the coloured
> > ones. I can't understand why.
> >
> > I tried to change it to look like dots by calling empty plots so that I
> > will add them as points.
> >
> > Since I have a range of date that can fall any where within 2005, I
> tried:
> >
> > plot(1, type="n", xlab="", ylab="",
> > xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")), ylim=c(-.5, -10))
> >
> > ylim worked fine but xlim instead of appearing like date as indicated on
> > the x-axes of the attached plot, translated to ordinary numbers (12800,
> > 12900,13000, 13100).
> >
> > All the data is of the same format:
> > 2005-01-04 -2.76105935648091
> > 2005-01-19 -9.60813496025994
> > 2005-01-22 -7.92101965866777
> > 2005-02-19 -1.61308152604905
> > 2005-02-24 -1.51497015807712
> > 2005-05-09 -2.06465797304654
> > 2005-05-11 -1.14840389007051
> > 2005-05-16 -3.85281900888504
> > 2005-06-13 -1.18659683796617
> > 2005-06-17 -3.48787712566258
> > 2005-06-22 -1.14223758296308
> > 2005-07-18 -4.96013018907366
> > 2005-08-03 -1.24313324914368
> > 2005-08-07 -2.96672894841722
> > 2005-08-10 -1.11868063781156
> > 2005-08-25 -1.46453734930983
> > 2005-09-13 -8.00895215754776
> > 2005-09-15 -6.63439065989452
> > 2005-10-13 -2.25054996925846
> > 2005-12-15 -1.08933890547705
>
> You did not succeed in creating a plot that the rhelp mail server would
> accept. My guess is that the first column is a factor variable and that you
> did not use colClasses when doing your data input.
>
> dd <- read.table(text="2005-01-04 -2.76105935648091
> 2005-01-19 -9.60813496025994
> 2005-01-22 -7.92101965866777
> 2005-02-19 -1.61308152604905
> 2005-02-24 -1.51497015807712
> 2005-05-09 -2.06465797304654
> 2005-05-11 -1.14840389007051
> 2005-05-16 -3.85281900888504
> 2005-06-13 -1.18659683796617
> 2005-06-17 -3.48787712566258
> 2005-06-22 -1.14223758296308
> 2005-07-18 -4.96013018907366
> 2005-08-03 -1.24313324914368
> 2005-08-07 -2.96672894841722
> 2005-08-10 -1.11868063781156
> 2005-08-25 -1.46453734930983
> 2005-09-13 -8.00895215754776
> 2005-09-15 -6.63439065989452
> 2005-10-13 -2.25054996925846
> 2005-12-15 -1.08933890547705", colClasses=c("Date","numeric")
> )
>
>
> No problems with:
>
>  plot(dd[[1]], dd[[2]],
> xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")))
>
>
> (Not a particularly good test of the use of an xlim argument since nothing
> was excluded.)
>
> PDF's are accepted. PNGs are not.
>
> --
> David.
> >
> > Thank you so much for your input.
> >
> > Best regards
> > Ogbos
> > ______________________________________________
> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > 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.
>
> David Winsemius
> Alameda, CA, USA
>
> 'Any technology distinguishable from magic is insufficiently advanced.'
>  -Gehm's Corollary to Clarke's Third Law
>
>
>
>
>
>

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
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.

Ogbos.pdf (7K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: as.Date and ylim in empty plot: RESOLVED

David Winsemius

> On Sep 19, 2018, at 10:48 PM, Ogbos Okike <[hidden email]> wrote:
>
> Hi David,
> That's it!!! The outcome is attached.

The explanation for this is that columns that have digits separated by dashes will not be interpreted by R's read.table() as numeric or dates, but rather as the default for text entries:  as R factors. Factors are stored as numbers with an associated attribute that gets used to display the meaning of those numbers. Since the numbers used are integers from 1 to the count of unique items, using the xlim = as.numeric(as.Date(.)) creates values are far outside the range of the factor integers and nothing gets displayed as a result. If you had used range(as.numeric(<factor-variable-name>)) you might have seen something. Whether it was what you wanted to see .... well, that's another matter!

Good luck understanding R factors. Some research centers have adopted a policy of setting the option used by read.table for that behavior with:

options(stringsAsFactors= FALSE)  # can be set in .Rprofile or other "startup" file.

That produces text rather than factors by default and might result in less confusion.

--
David.

>
> Many thanks please.
>
> Best
> Ogbos
>
> On Wed, Sep 19, 2018 at 11:34 PM David Winsemius <[hidden email]> wrote:
>
> > On Sep 19, 2018, at 7:55 AM, Ogbos Okike <[hidden email]> wrote:
> >
> > Dear Experts,
> > I generated the plot attached. Every other thing is OK except the black
> > horizontal lines which should appear like points or dots as the coloured
> > ones. I can't understand why.
> >
> > I tried to change it to look like dots by calling empty plots so that I
> > will add them as points.
> >
> > Since I have a range of date that can fall any where within 2005, I tried:
> >
> > plot(1, type="n", xlab="", ylab="",
> > xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")), ylim=c(-.5, -10))
> >
> > ylim worked fine but xlim instead of appearing like date as indicated on
> > the x-axes of the attached plot, translated to ordinary numbers (12800,
> > 12900,13000, 13100).
> >
> > All the data is of the same format:
> > 2005-01-04 -2.76105935648091
> > 2005-01-19 -9.60813496025994
> > 2005-01-22 -7.92101965866777
> > 2005-02-19 -1.61308152604905
> > 2005-02-24 -1.51497015807712
> > 2005-05-09 -2.06465797304654
> > 2005-05-11 -1.14840389007051
> > 2005-05-16 -3.85281900888504
> > 2005-06-13 -1.18659683796617
> > 2005-06-17 -3.48787712566258
> > 2005-06-22 -1.14223758296308
> > 2005-07-18 -4.96013018907366
> > 2005-08-03 -1.24313324914368
> > 2005-08-07 -2.96672894841722
> > 2005-08-10 -1.11868063781156
> > 2005-08-25 -1.46453734930983
> > 2005-09-13 -8.00895215754776
> > 2005-09-15 -6.63439065989452
> > 2005-10-13 -2.25054996925846
> > 2005-12-15 -1.08933890547705
>
> You did not succeed in creating a plot that the rhelp mail server would accept. My guess is that the first column is a factor variable and that you did not use colClasses when doing your data input.
>
> dd <- read.table(text="2005-01-04 -2.76105935648091
> 2005-01-19 -9.60813496025994
> 2005-01-22 -7.92101965866777
> 2005-02-19 -1.61308152604905
> 2005-02-24 -1.51497015807712
> 2005-05-09 -2.06465797304654
> 2005-05-11 -1.14840389007051
> 2005-05-16 -3.85281900888504
> 2005-06-13 -1.18659683796617
> 2005-06-17 -3.48787712566258
> 2005-06-22 -1.14223758296308
> 2005-07-18 -4.96013018907366
> 2005-08-03 -1.24313324914368
> 2005-08-07 -2.96672894841722
> 2005-08-10 -1.11868063781156
> 2005-08-25 -1.46453734930983
> 2005-09-13 -8.00895215754776
> 2005-09-15 -6.63439065989452
> 2005-10-13 -2.25054996925846
> 2005-12-15 -1.08933890547705", colClasses=c("Date","numeric")
> )
>
>
> No problems with:
>
>  plot(dd[[1]], dd[[2]], xlim=c(as.Date("2005-01-01"),as.Date("2005-12-31")))
>
>
> (Not a particularly good test of the use of an xlim argument since nothing was excluded.)
>
> PDF's are accepted. PNGs are not.
>
> --
> David.
> >
> > Thank you so much for your input.
> >
> > Best regards
> > Ogbos
> > ______________________________________________
> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > 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.
>
> David Winsemius
> Alameda, CA, USA
>
> 'Any technology distinguishable from magic is insufficiently advanced.'   -Gehm's Corollary to Clarke's Third Law
>
>
>
>
>
> <Ogbos.pdf>

David Winsemius
Alameda, CA, USA

'Any technology distinguishable from magic is insufficiently advanced.'   -Gehm's Corollary to Clarke's Third Law

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
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.