[R] graphs, need urgent help (deadline :( )

Don McKenzie dmck at u.washington.edu
Wed Jun 10 19:03:00 CEST 2015


> On Jun 10, 2015, at 9:08 AM, Rosa Oliveira <rosita21 at gmail.com> wrote:
> 
> Dear All,
> 
> 
> I attach my data.
> 
> Dear Jim, 
> 
> when I run your code (even the one you send me, not in my data), I get: 
> 
> Don't know how to automatically pick scale for object of type function. Defaulting to continuous
> Error in data.frame(x = c(0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1,  : 
>   arguments imply differing number of rows: 24, 0
> 
> 
> 
> Dear Don,
> 
> It’s meant that I will have 12 lines: 
> 3 factors - lines colors
> with 3 different values of “sample” for each - line types
> 
> 
> [Three colors, one for each factor,
> and  three line types (lty=1,2,3), one for eachvalue of “sample - preferable dash, thin and thick).
> 
> 
> in the X - I should have region (because I have 10 regions)
> for each region I have the outcome of 3 different treatments (factor)
> for each region and each treatment I have 3 different sample size.

But in your original post you had 4 sample sizes: 10,20,30,40.
> 
> I need to “see” the the influence of the region in the treatment outcome for each sample size.
> 
> So, at the end I should have 9 lines
> 3 red (1 dash, 1 thin, 1 thick) - concerning factor a (dash for sample size 50, thin for sample size 250 and thick for sample size 1000)
> 3 blue (1 dash, 1 thin, 1 thick) - concerning factor b (dash for sample size 50, thin for sample size 250 and thick for sample size 1000)
> 3 green (1 dash, 1 thin, 1 thick) - concerning factor c (dash for sample size 50, thin for sample size 250 and thick for sample size 1000)
> 
> 
> 
> Hope this time is clear.
> 
> 
> I also though about doing 3 different graphs, each one for 1 different sample size, and in that case I should have 3 graphs each one with 3 lines
> 1 red to factor a, 1 blue to factor b and 1 green to factor c.
> 
> Do you all think is better?

A matter of style perhaps but I would use dotplots because you have only two data points for each “line”.  The lines will be misleading.  You also could use 
panel plots, but given your skill set (unless someone wants to spend a fair bit of time with you), it’s probably best to stay as simple as possible.

But given your original post (cleaned up)   # untested: apologies for any typos

>        region              sample          factora          factorb 		factorc
> 	0.1  			10     	 0.895   		0.903   		0.378
> 	0.2  			10      	0.811  		 0.865  		 0.688
> 	0.1  			20      	0.735   		0.966   		0.611
> 	0.2  			20     	 0.777  		 0.732  		 0.653
> 	0.1  			30      	0.600   		0.778   		0.694
> 	0.2  			30     	 0.466  		 174.592 		0.461
> 	0.1  			40     	 0.446   		0.432   		0.693
> 	0.2  			40     	 0.392   		0.294  		 0.686


plot(my.data$region[my.data$sample==10],my.data$factora[my.data$sample==10],col=4,type=“l”,ylim=c(0,1),xlab=“region”,ylab=“factor")
lines(my.data$region[my.data$sample==10],my.data$factorb[my.data$sample==10],col=2)
lines(my.data$region[my.data$sample==10],my.data$factorc[my.data$sample==10],col=3)

lines(my.data$region[my.data$sample==20],my.data$factora[my.data$sample==20],col=4,lty=2)
lines(my.data$region[my.data$sample==20],my.data$factorb[my.data$sample==20],col=2,lty=2)
lines(my.data$region[my.data$sample==20],my.data$factorc[my.data$sample==20],col=3,lty=2)

#  Now do two more groups of 3, changing the parameter “lty” to 3 and then 4


# Look at the syntax and note what changes and what stays constant. Do you see how this works?
# there will be what looks like a vertical line where sample = 30 and factorb = 174.592.  Do you see why?

# then you will need a legend

> Nonetheless I can’t do it :(
> 
> best,
> RO
> 
> 
> 
> Atenciosamente,
> Rosa Oliveira
> 
> -- 
> ____________________________________________________________________________
>  
> <smile.jpg>
> Rosa Celeste dos Santos Oliveira, 
> 
> E-mail: rosita21 at gmail.com <mailto:rosita21 at gmail.com>
> Tlm: +351 939355143 
> Linkedin: https://pt.linkedin.com/in/rosacsoliveira <https://pt.linkedin.com/in/rosacsoliveira>
> ____________________________________________________________________________
> "Many admire, few know"
> Hippocrates
> 
>> On 10 Jun 2015, at 14:13, John Kane <jrkrideau at inbox.com <mailto:jrkrideau at inbox.com>> wrote:
>> 
>> Hi Jim,
>> 
>> I was looking at that last night and had the same problem of visualizing what Rosa needed.  
>> 
>> Hi Rosa
>> This is nothing like what you wanted and I really don't understand your data but would something like this work as a substitute or am I completely lost?
>> 
>> 
>> dat1  <-  structure(list(region = c(0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 
>> 0.2), sample = c(10L, 10L, 20L, 20L, 30L, 30L, 40L, 40L), factora = c(0.895, 
>> 0.811, 0.735, 0.777, 0.6, 0.466, 0.446, 0.392), factorb = c(0.903, 
>> 0.865, 0.966, 0.732, 0.778, 0.592, 0.432, 0.294), factorc = c(0.37, 
>> 0.688, 0.611, 0.653, 0.694, 0.461, 0.693, 0.686)), .Names = c("region", 
>> "sample", "factora", "factorb", "factorc"), class = "data.frame", row.names = c(NA, 
>> -8L))
>> 
>> 
>> mdat1  <-   melt(dat1, id.var = c("region", "sample"),
>>                    variable.name = "factor",
>>                    value.name = "value")
>> str(mdat1)
>> 
>> ggplot(mdat1, aes(region, value, colour = factor)) +
>>                geom_line() + facet_grid(sample ~ .)
>> 
>> John Kane
>> Kingston ON Canada
>> 
>> 
>>> -----Original Message-----
>>> From: drjimlemon at gmail.com <mailto:drjimlemon at gmail.com>
>>> Sent: Wed, 10 Jun 2015 20:51:52 +1000
>>> To: rosita21 at gmail.com <mailto:rosita21 at gmail.com>
>>> Subject: Re: [R] graphs, need urgent help (deadline :( )
>>> 
>>> Hi Rosa,
>>> Like Don, I can't work out what you want and I don't even have the
>>> picture. For example, your specification of color and line type leaves
>>> only one point for each color and line type, and the line from one
>>> point to the same point is not going to show up. Here is a possibility
>>> that may lead (eventually) to a solution.
>>> 
>>> library(plotrix)
>>> par(tcl=-0.1)
>>> gap.plot(x=rep(seq(10,45,by=5),3),
>>> y=unlist(my.data[,c("factora","factorb","factorc")]),
>>> main="A plot of factorial mystery",
>>> gap=c(1.1,174),ylim=c(0,175),ylab="factor score",xlab="Group",
>>> xticlab=c(" \n0.1\n10"," \n0.2\n10"," \n0.1\n20"," \n0.2\n20",
>>>  " \n0.1\n30"," \n0.2\n30"," \n0.1\n40"," \n0.2\n40"),
>>> ytics=c(0,0.5,1,174.59),pch=rep(1:3,each=8),col=rep(c(4,2,3),each=8))
>>> mtext(c("Region","Sample"),side=1,at=6,line=c(0,1))
>>> lines(seq(10,45,by=5),my.data$factora,col=4)
>>> lines(seq(10,45,by=5),my.data$factorb[c(1:5,NA,7,8)],col=2)
>>> lines(seq(10,45,by=5),my.data$factorc,col=3)
>>> 
>>> Jim
>>> 
>>> 
>>> On Wed, Jun 10, 2015 at 10:53 AM, Rosa Oliveira <rosita21 at gmail.com <mailto:rosita21 at gmail.com>>
>>> wrote:
>>>> Dear Don and all,
>>>> 
>>>> I’ve read the tutorial and tried several codes before posting :)
>>>> I’m really naive.
>>>> 
>>>> 
>>>> 
>>>> what I was trying to :  is something like the graph in the picture I
>>>> drawee.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Is it more clear now?
>>>> 
>>>> Atenciosamente,
>>>> Rosa Oliveira
>>>> 
>>>> --
>>>> ____________________________________________________________________________
>>>> 
>>>> 
>>>> Rosa Celeste dos Santos Oliveira,
>>>> 
>>>> E-mail: rosita21 at gmail.com <mailto:rosita21 at gmail.com> <mailto:rosita21 at gmail.com <mailto:rosita21 at gmail.com>>
>>>> Tlm: +351 939355143
>>>> Linkedin: https://pt.linkedin.com/in/rosacsoliveira <https://pt.linkedin.com/in/rosacsoliveira>
>>>> <https://pt.linkedin.com/in/rosacsoliveira <https://pt.linkedin.com/in/rosacsoliveira>>
>>>> ____________________________________________________________________________
>>>> "Many admire, few know"
>>>> Hippocrates
>>>> 
>>>>> On 09 Jun 2015, at 19:23, Don McKenzie <dmck at u.washington.edu <mailto:dmck at u.washington.edu>
>>>>> <mailto:dmck at u.washington.edu <mailto:dmck at u.washington.edu>>> wrote:
>>>>> 
>>>>> The answer lies in learning to use the help (and knowing where to
>>>>> start).  Did you look at the tutorial that comes with the R
>>>>> installation?
>>>>> 
>>>>> ?plot
>>>>> ?lines
>>>>> 
>>>>> ?par
>>>>> 
>>>>> In the last, look for the descriptions of “col” and “lty”.
>>>>> 
>>>>> Using plot() and lines(), and subsetting the four unique values of
>>>>> “sample”, you can create your lines.
>>>>> 
>>>>> Here is a crude start, assuming your columns are part of a data frame
>>>>> called “my.data”.   Untested...
>>>>> 
>> plot(my.data$region[my.data$sample==10],my.data$factora[my.data$sample==10],col=4)
>>>>> # blue line, not dashed
>>>>> .
>>>>> .
>>>>> .
>> lines(my.data$region[my.data$sample==20],my.data$factorb[my.data$sample==20],col=2,lty=2)
>>>>> # red dashed line
>>>>> 
>>>>> 
>>>>>> On Jun 9, 2015, at 10:36 AM, Rosa Oliveira <rosita21 at gmail.com <mailto:rosita21 at gmail.com>
>>>>>> <mailto:rosita21 at gmail.com <mailto:rosita21 at gmail.com>>> wrote:
>>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>> another naive question (i’m pretty sure :( )
>>>>>> 
>>>>>> 
>>>>>> I’m trying to plot a multiple line graph:
>>>>>> 
>>>>>>        region              sample          factora          factorb
>>>>>> factorc
>>>>>> 0.1  10      0.895   0.903   0.378
>>>>>> 0.2  10      0.811   0.865   0.688
>>>>>> 0.1  20      0.735   0.966   0.611
>>>>>> 0.2  20      0.777   0.732   0.653
>>>>>> 0.1  30      0.600   0.778   0.694
>>>>>> 0.2  30      0.466   174.592 0.461
>>>>>> 0.1  40      0.446   0.432   0.693
>>>>>> 0.2  40      0.392   0.294   0.686
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> The first column should be the independent variable, the second should
>>>>>> compute a bold line for sample(10) and dash line for sample 20.
>>>>> 
>>>>> What about the other two values of “sample”?
>>>>> 
>>>>>> The others variables are outcomes for each of the first scenarios, and
>>>>>> so it should: the 3rd, 4th and 5th columns should be blue, red and
>>>>>> green respectively.
>>>>>> 
>>>>>> 
>>>>>> Resume :)
>>>>>> 
>>>>>> I should have a graph, in the x-axe should have the region and in the
>>>>>> y axe, the factor.
>>>>>> Lines:
>>>>>>     1 - blue and bold for region 0.1, sample 10 and factor a
>>>>>>     2 - blue and dash for region 0.2, sample 10 and factor a
>>>>>>     3 - red and bold for region 0.1, sample 10 and factor b
>>>>>>     4 - red and dash for region 0.2, sample 10 and factor b
>>>>>>     5 - green and bold for region 0.1, sample 10 and factor c
>>>>>>     6 - green and dash for region 0.2, sample 10 and factor c
>>>>> 
>>>>> Not consistent with what you said above. These are no longer lines, but
>>>>> points.
>>>>>> 
>>>>>> nonetheless the independent variable is nominal, I should plot a line
>>>>>> graph.
>>>>>> 
>>>>>> Can anyone help me please?
>>>>>> I have my file as a cvs file, so I first read that file (that I know
>>>>>> how to do :)).
>>>>>> 
>>>>>> But I have it in that format.
>>>>>> 
>>>>>> Best,
>>>>>> RO
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> Atenciosamente,
>>>>>> Rosa Oliveira
>>>>>> 
>>>>>> --
>>>>>> ____________________________________________________________________________
>>>>>> 
>>>>>> 
>>>>>> Rosa Celeste dos Santos Oliveira,
>>>>>> 
>>>>>> E-mail: rosita21 at gmail.com <mailto:rosita21 at gmail.com> <mailto:rosita21 at gmail.com <mailto:rosita21 at gmail.com>>
>>>>>> Tlm: +351 939355143
>>>>>> Linkedin: https://pt.linkedin.com/in/rosacsoliveira <https://pt.linkedin.com/in/rosacsoliveira>
>>>>>> <https://pt.linkedin.com/in/rosacsoliveira <https://pt.linkedin.com/in/rosacsoliveira>>
>>>>>> ____________________________________________________________________________
>>>>>> "Many admire, few know"
>>>>>> Hippocrates
>>>>>> 
>>>>>> 
>>>>>>     [[alternative HTML version deleted]]
>>>>>> 
>>>>>> ______________________________________________
>>>>>> R-help at r-project.org <mailto:R-help at r-project.org> <mailto:R-help at r-project.org <mailto:R-help at r-project.org>> mailing list -- To
>>>>>> UNSUBSCRIBE and more, see
>>>>>> https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help>
>>>>>> <https://stat.ethz.ch/mailman/listinfo/r-help>
>>>>>> PLEASE do read the posting guide
>>>>>> http://www.R-project.org/posting-guide.html
>>>>>> <http://www.r-project.org/posting-guide.html>
>>>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>> 
>>>>> <PastedGraphic-1.tiff>
>>>>> 
>>>> 
>>>> ______________________________________________
>>>> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see
>>>> https://stat.ethz.ch/mailman/listinfo/r-help <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.
>>> 
>>> ______________________________________________
>>> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see
>>> https://stat.ethz.ch/mailman/listinfo/r-help <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.
>> 
>> ____________________________________________________________
>> FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins, sharks & orcas on your desktop!
>> Check it out at http://www.inbox.com/marineaquarium <http://www.inbox.com/marineaquarium>
>> 
>> 
> 





More information about the R-help mailing list