Thanks, but rbind/merge function only combines two dataframes each time, how to work on multiple dataframes? Thanks again. On Wed, Aug 3, 2016 at 4:20 AM, PIKAL Petr <petr.pikal at precheza.cz> wrote:> Hi. > > Hm. I would add a column indicating data frame and merge/rbind all data > frames. > > Something like > > df1$fr <- 1 > df2$fr <- 2 > > dfkompl <- rbind(df1, df2) > > ggplot(dfkompl, aes(x=time, y=varA, colour=factor(fr)) > > Cheers > Petr > > > > -----Original Message----- > > From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of lily li > > Sent: Tuesday, August 2, 2016 8:51 PM > > To: R mailing list <r-help at r-project.org> > > Subject: [R] plot many dfs in ggplot > > > > Hi all, > > > > I have another question. There are several dataframes, each has the same > > columns: time, varA, varB, varC, etc. If I want to plot time ~ varA of > each > > dataframe, where different dataframe names use different colors. How to > > do this in ggplot? Thanks for your help. > > > > Right now, I tried to use the code below, but very laborious, and needs > colors > > manually. > > > > fig1 = ggplot()+ > > geom_path(data=df1, aes(x=time, y= varA, color= 'df1'))+ > > geom_path(data=df2, aes(x=time, y= varA, color= 'df2'))+ > > geom_path(data=df3, aes(x=time, y= varA, color= 'df3'))+ > > ... > > scale_color_manual('', limits=c('df1', 'df2', 'df3', ...), > values=c('blue', red', > > 'green', ...)) > > show(fig1) > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-help at r-project.org 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. > > ________________________________ > Tento e-mail a jak?koliv k n?mu p?ipojen? dokumenty jsou d?v?rn? a jsou > ur?eny pouze jeho adres?t?m. > Jestli?e jste obdr?el(a) tento e-mail omylem, informujte laskav? > neprodlen? jeho odes?latele. Obsah tohoto emailu i s p??lohami a jeho kopie > vyma?te ze sv?ho syst?mu. > Nejste-li zam??len?m adres?tem tohoto emailu, nejste opr?vn?ni tento email > jakkoliv u??vat, roz?i?ovat, kop?rovat ?i zve?ej?ovat. > Odes?latel e-mailu neodpov?d? za eventu?ln? ?kodu zp?sobenou modifikacemi > ?i zpo?d?n?m p?enosu e-mailu. > > V p??pad?, ?e je tento e-mail sou??st? obchodn?ho jedn?n?: > - vyhrazuje si odes?latel pr?vo ukon?it kdykoliv jedn?n? o uzav?en? > smlouvy, a to z jak?hokoliv d?vodu i bez uveden? d?vodu. > - a obsahuje-li nab?dku, je adres?t opr?vn?n nab?dku bezodkladn? p?ijmout; > Odes?latel tohoto e-mailu (nab?dky) vylu?uje p?ijet? nab?dky ze strany > p??jemce s dodatkem ?i odchylkou. > - trv? odes?latel na tom, ?e p??slu?n? smlouva je uzav?ena teprve > v?slovn?m dosa?en?m shody na v?ech jej?ch n?le?itostech. > - odes?latel tohoto emailu informuje, ?e nen? opr?vn?n uzav?rat za > spole?nost ??dn? smlouvy s v?jimkou p??pad?, kdy k tomu byl p?semn? zmocn?n > nebo p?semn? pov??en a takov? pov??en? nebo pln? moc byly adres?tovi tohoto > emailu p??padn? osob?, kterou adres?t zastupuje, p?edlo?eny nebo jejich > existence je adres?tovi ?i osob? j?m zastoupen? zn?m?. > > This e-mail and any documents attached to it may be confidential and are > intended only for its intended recipients. > If you received this e-mail by mistake, please immediately inform its > sender. Delete the contents of this e-mail with all attachments and its > copies from your system. > If you are not the intended recipient of this e-mail, you are not > authorized to use, disseminate, copy or disclose this e-mail in any manner. > The sender of this e-mail shall not be liable for any possible damage > caused by modifications of the e-mail or by delay with transfer of the > email. > > In case that this e-mail forms part of business dealings: > - the sender reserves the right to end negotiations about entering into a > contract in any time, for any reason, and without stating any reasoning. > - if the e-mail contains an offer, the recipient is entitled to > immediately accept such offer; The sender of this e-mail (offer) excludes > any acceptance of the offer on the part of the recipient containing any > amendment or variation. > - the sender insists on that the respective contract is concluded only > upon an express mutual agreement on all its aspects. > - the sender of this e-mail informs that he/she is not authorized to enter > into any contracts on behalf of the company except for cases in which > he/she is expressly authorized to do so in writing, and such authorization > or power of attorney is submitted to the recipient or the person > represented by the recipient, or the existence of such authorization is > known to the recipient of the person represented by the recipient. >[[alternative HTML version deleted]]
Not quite - this works: rbind(df1, df2, df3, df1, df2, df3) Or if the have your data.frames in a list, use do.call: df.lst <- list(df1, df2, df3, df1, df2, df3) do.call(rbind, df.lst) You might take a look at the facet functionality in ggplot once you are ready to build your plots. Best, Ulrik On Wed, 3 Aug 2016 at 17:42 lily li <chocold12 at gmail.com> wrote:> Thanks, but rbind/merge function only combines two dataframes each time, > how to work on multiple dataframes? Thanks again. > > > On Wed, Aug 3, 2016 at 4:20 AM, PIKAL Petr <petr.pikal at precheza.cz> wrote: > > > Hi. > > > > Hm. I would add a column indicating data frame and merge/rbind all data > > frames. > > > > Something like > > > > df1$fr <- 1 > > df2$fr <- 2 > > > > dfkompl <- rbind(df1, df2) > > > > ggplot(dfkompl, aes(x=time, y=varA, colour=factor(fr)) > > > > Cheers > > Petr > > > > > > > -----Original Message----- > > > From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of lily > li > > > Sent: Tuesday, August 2, 2016 8:51 PM > > > To: R mailing list <r-help at r-project.org> > > > Subject: [R] plot many dfs in ggplot > > > > > > Hi all, > > > > > > I have another question. There are several dataframes, each has the > same > > > columns: time, varA, varB, varC, etc. If I want to plot time ~ varA of > > each > > > dataframe, where different dataframe names use different colors. How to > > > do this in ggplot? Thanks for your help. > > > > > > Right now, I tried to use the code below, but very laborious, and needs > > colors > > > manually. > > > > > > fig1 = ggplot()+ > > > geom_path(data=df1, aes(x=time, y= varA, color= 'df1'))+ > > > geom_path(data=df2, aes(x=time, y= varA, color= 'df2'))+ > > > geom_path(data=df3, aes(x=time, y= varA, color= 'df3'))+ > > > ... > > > scale_color_manual('', limits=c('df1', 'df2', 'df3', ...), > > values=c('blue', red', > > > 'green', ...)) > > > show(fig1) > > > > > > [[alternative HTML version deleted]] > > > > > > ______________________________________________ > > > R-help at r-project.org 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. > > > > ________________________________ > > Tento e-mail a jak?koliv k n?mu p?ipojen? dokumenty jsou d?v?rn? a jsou > > ur?eny pouze jeho adres?t?m. > > Jestli?e jste obdr?el(a) tento e-mail omylem, informujte laskav? > > neprodlen? jeho odes?latele. Obsah tohoto emailu i s p??lohami a jeho > kopie > > vyma?te ze sv?ho syst?mu. > > Nejste-li zam??len?m adres?tem tohoto emailu, nejste opr?vn?ni tento > email > > jakkoliv u??vat, roz?i?ovat, kop?rovat ?i zve?ej?ovat. > > Odes?latel e-mailu neodpov?d? za eventu?ln? ?kodu zp?sobenou modifikacemi > > ?i zpo?d?n?m p?enosu e-mailu. > > > > V p??pad?, ?e je tento e-mail sou??st? obchodn?ho jedn?n?: > > - vyhrazuje si odes?latel pr?vo ukon?it kdykoliv jedn?n? o uzav?en? > > smlouvy, a to z jak?hokoliv d?vodu i bez uveden? d?vodu. > > - a obsahuje-li nab?dku, je adres?t opr?vn?n nab?dku bezodkladn? > p?ijmout; > > Odes?latel tohoto e-mailu (nab?dky) vylu?uje p?ijet? nab?dky ze strany > > p??jemce s dodatkem ?i odchylkou. > > - trv? odes?latel na tom, ?e p??slu?n? smlouva je uzav?ena teprve > > v?slovn?m dosa?en?m shody na v?ech jej?ch n?le?itostech. > > - odes?latel tohoto emailu informuje, ?e nen? opr?vn?n uzav?rat za > > spole?nost ??dn? smlouvy s v?jimkou p??pad?, kdy k tomu byl p?semn? > zmocn?n > > nebo p?semn? pov??en a takov? pov??en? nebo pln? moc byly adres?tovi > tohoto > > emailu p??padn? osob?, kterou adres?t zastupuje, p?edlo?eny nebo jejich > > existence je adres?tovi ?i osob? j?m zastoupen? zn?m?. > > > > This e-mail and any documents attached to it may be confidential and are > > intended only for its intended recipients. > > If you received this e-mail by mistake, please immediately inform its > > sender. Delete the contents of this e-mail with all attachments and its > > copies from your system. > > If you are not the intended recipient of this e-mail, you are not > > authorized to use, disseminate, copy or disclose this e-mail in any > manner. > > The sender of this e-mail shall not be liable for any possible damage > > caused by modifications of the e-mail or by delay with transfer of the > > email. > > > > In case that this e-mail forms part of business dealings: > > - the sender reserves the right to end negotiations about entering into a > > contract in any time, for any reason, and without stating any reasoning. > > - if the e-mail contains an offer, the recipient is entitled to > > immediately accept such offer; The sender of this e-mail (offer) excludes > > any acceptance of the offer on the part of the recipient containing any > > amendment or variation. > > - the sender insists on that the respective contract is concluded only > > upon an express mutual agreement on all its aspects. > > - the sender of this e-mail informs that he/she is not authorized to > enter > > into any contracts on behalf of the company except for cases in which > > he/she is expressly authorized to do so in writing, and such > authorization > > or power of attorney is submitted to the recipient or the person > > represented by the recipient, or the existence of such authorization is > > known to the recipient of the person represented by the recipient. > > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org 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.[[alternative HTML version deleted]]
Thanks. How to add an additional column, with the name of each dataframe's name? On Wed, Aug 3, 2016 at 1:06 PM, Ulrik Stervbo <ulrik.stervbo at gmail.com> wrote:> Not quite - this works: rbind(df1, df2, df3, df1, df2, df3) > > Or if the have your data.frames in a list, use do.call: > > df.lst <- list(df1, df2, df3, df1, df2, df3) > do.call(rbind, df.lst) > > You might take a look at the facet functionality in ggplot once you are > ready to build your plots. > > Best, > Ulrik > > On Wed, 3 Aug 2016 at 17:42 lily li <chocold12 at gmail.com> wrote: > >> Thanks, but rbind/merge function only combines two dataframes each time, >> how to work on multiple dataframes? Thanks again. >> >> >> On Wed, Aug 3, 2016 at 4:20 AM, PIKAL Petr <petr.pikal at precheza.cz> >> wrote: >> >> > Hi. >> > >> > Hm. I would add a column indicating data frame and merge/rbind all data >> > frames. >> > >> > Something like >> > >> > df1$fr <- 1 >> > df2$fr <- 2 >> > >> > dfkompl <- rbind(df1, df2) >> > >> > ggplot(dfkompl, aes(x=time, y=varA, colour=factor(fr)) >> > >> > Cheers >> > Petr >> > >> > >> > > -----Original Message----- >> > > From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of lily >> li >> > > Sent: Tuesday, August 2, 2016 8:51 PM >> > > To: R mailing list <r-help at r-project.org> >> > > Subject: [R] plot many dfs in ggplot >> > > >> > > Hi all, >> > > >> > > I have another question. There are several dataframes, each has the >> same >> > > columns: time, varA, varB, varC, etc. If I want to plot time ~ varA of >> > each >> > > dataframe, where different dataframe names use different colors. How >> to >> > > do this in ggplot? Thanks for your help. >> > > >> > > Right now, I tried to use the code below, but very laborious, and >> needs >> > colors >> > > manually. >> > > >> > > fig1 = ggplot()+ >> > > geom_path(data=df1, aes(x=time, y= varA, color= 'df1'))+ >> > > geom_path(data=df2, aes(x=time, y= varA, color= 'df2'))+ >> > > geom_path(data=df3, aes(x=time, y= varA, color= 'df3'))+ >> > > ... >> > > scale_color_manual('', limits=c('df1', 'df2', 'df3', ...), >> > values=c('blue', red', >> > > 'green', ...)) >> > > show(fig1) >> > > >> > > [[alternative HTML version deleted]] >> > > >> > > ______________________________________________ >> > > R-help at r-project.org 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. >> > >> > ________________________________ >> > Tento e-mail a jak?koliv k n?mu p?ipojen? dokumenty jsou d?v?rn? a jsou >> > ur?eny pouze jeho adres?t?m. >> > Jestli?e jste obdr?el(a) tento e-mail omylem, informujte laskav? >> > neprodlen? jeho odes?latele. Obsah tohoto emailu i s p??lohami a jeho >> kopie >> > vyma?te ze sv?ho syst?mu. >> > Nejste-li zam??len?m adres?tem tohoto emailu, nejste opr?vn?ni tento >> email >> > jakkoliv u??vat, roz?i?ovat, kop?rovat ?i zve?ej?ovat. >> > Odes?latel e-mailu neodpov?d? za eventu?ln? ?kodu zp?sobenou >> modifikacemi >> > ?i zpo?d?n?m p?enosu e-mailu. >> > >> > V p??pad?, ?e je tento e-mail sou??st? obchodn?ho jedn?n?: >> > - vyhrazuje si odes?latel pr?vo ukon?it kdykoliv jedn?n? o uzav?en? >> > smlouvy, a to z jak?hokoliv d?vodu i bez uveden? d?vodu. >> > - a obsahuje-li nab?dku, je adres?t opr?vn?n nab?dku bezodkladn? >> p?ijmout; >> > Odes?latel tohoto e-mailu (nab?dky) vylu?uje p?ijet? nab?dky ze strany >> > p??jemce s dodatkem ?i odchylkou. >> > - trv? odes?latel na tom, ?e p??slu?n? smlouva je uzav?ena teprve >> > v?slovn?m dosa?en?m shody na v?ech jej?ch n?le?itostech. >> > - odes?latel tohoto emailu informuje, ?e nen? opr?vn?n uzav?rat za >> > spole?nost ??dn? smlouvy s v?jimkou p??pad?, kdy k tomu byl p?semn? >> zmocn?n >> > nebo p?semn? pov??en a takov? pov??en? nebo pln? moc byly adres?tovi >> tohoto >> > emailu p??padn? osob?, kterou adres?t zastupuje, p?edlo?eny nebo jejich >> > existence je adres?tovi ?i osob? j?m zastoupen? zn?m?. >> > >> > This e-mail and any documents attached to it may be confidential and are >> > intended only for its intended recipients. >> > If you received this e-mail by mistake, please immediately inform its >> > sender. Delete the contents of this e-mail with all attachments and its >> > copies from your system. >> > If you are not the intended recipient of this e-mail, you are not >> > authorized to use, disseminate, copy or disclose this e-mail in any >> manner. >> > The sender of this e-mail shall not be liable for any possible damage >> > caused by modifications of the e-mail or by delay with transfer of the >> > email. >> > >> > In case that this e-mail forms part of business dealings: >> > - the sender reserves the right to end negotiations about entering into >> a >> > contract in any time, for any reason, and without stating any reasoning. >> > - if the e-mail contains an offer, the recipient is entitled to >> > immediately accept such offer; The sender of this e-mail (offer) >> excludes >> > any acceptance of the offer on the part of the recipient containing any >> > amendment or variation. >> > - the sender insists on that the respective contract is concluded only >> > upon an express mutual agreement on all its aspects. >> > - the sender of this e-mail informs that he/she is not authorized to >> enter >> > into any contracts on behalf of the company except for cases in which >> > he/she is expressly authorized to do so in writing, and such >> authorization >> > or power of attorney is submitted to the recipient or the person >> > represented by the recipient, or the existence of such authorization is >> > known to the recipient of the person represented by the recipient. >> > >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help at r-project.org 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. > >[[alternative HTML version deleted]]