[R] Plotting factors in graph panel

Anupam Tyagi @nupty@g| @end|ng |rom gm@||@com
Thu Jun 29 05:48:47 CEST 2023


Thanks, Pikal and Jim. Yes, it has been a long time Jim. I hope you have
been well.

Pikal, thanks. Your solution may be close to what I want. I did not know
that I was posting in HTML. I just copied the data from Excel and posted in
the email in Gmail. The data is still in Excel, because I have not yet
figured out what is a good way to organize it in R. I am posting it again
below as text. These are rows in Excel: 1,2,3,5,9 after MF are income
categories and No Answer category (9). Down the second column are
categories of MF and Bank AC. Rest of the columns are percentages.

Jim, thanks for the graph. I am looking to plot only one line (category)
each in many small plots on the same page. I don't want to compare
different categories on the same graph as you do, but see how each category
varies by income, one category in each graph. Like Excel does with
Sparklines (Top menu: Insert, Sparklines, Lines). I have many categories
for many variables. I am only showing two MF and Bank AC.

Income $10 $25 $40 $75 > $75 No Answer
MF 1 2 3 4 5 9
None 1 3.05 2.29 2.24 1.71 1.30 2.83
Equity 2 29.76 28.79 29.51 28.90 31.67 36.77
Debt 3 31.18 32.64 34.31 35.65 37.59 33.15
Hybrid 4 36.00 36.27 33.94 33.74 29.44 27.25
Bank AC
None 1 46.54 54.01 59.1 62.17 67.67 60.87
Current 2 24.75 24.4 25 24.61 24.02 21.09
Savings 3 25.4 18.7 29 11.48 7.103 13.46
No Answer 9 3.307 2.891 13.4 1.746 1.208 4.577


On Wed, 28 Jun 2023 at 17:30, Jim Lemon <drjimlemon using gmail.com> wrote:

> Hi Anupam,
> Haven't heard from you in a long time. Perhaps you want something like
> this:
>
> at_df<-read.table(text=
>  "Income MF MF_None MF_Equity MF_Debt MF_Hybrid Bank_None Bank_Current
> Bank_Savings Bank_NA
>  $10 1 3.05 29.76 31.18 36.0 46.54 24.75 25.4 3.307
>  $25 2 2.29 28.79 32.64 36.27 54.01 24.4 18.7 2.891
>  $40 3 2.24 29.51 34.31 33.94 59.1 25.0 29 13.4
>  $75 4 1.71 28.90 35.65 33.74 62.17 24.61 11.48 1.746
>  >$75 5 1.30 31.67 37.59 29.44 67.67 24.02 7.103 1.208
>  No_Answer 9 2.83 36.77 33.15 27.25 60.87 21.09 13.46 4.577",
>  header=TRUE,stringsAsFactors=FALSE)
> at_df<-at_df[at_df$Income!="No_Answer",which(names(at_df)!="Bank_NA")]
> png("MF_Bank.png",height=600)
> par(mfrow=c(2,1))
> matplot(at_df[,c("MF_None","MF_Equity","MF_Debt","MF_Hybrid")],
>  type="l",col=1:4,lty=1:4,lwd=3,
>  main="Percentages by Income and MF type",
>  xlab="Income",ylab="Percentage of group",xaxt="n")
> axis(1,at=1:5,labels=at_df$Income)
> legend(3,24,c("MF_None","MF_Equity","MF_Debt","MF_Hybrid"),
>  lty=1:4,lwd=3,col=1:4)
> matplot(at_df[,c("Bank_None","Bank_Current","Bank_Savings")],
>  type="l",col=1:3,lty=1:4,lwd=3,
>  main="Percentages by Income and Bank type",
>  xlab="Income",ylab="Percentage of group",xaxt="n")
> axis(1,at=1:5,labels=at_df$Income)
> legend(3,54,c("Bank_None","Bank_Current","Bank_Savings"),
>  lty=1:4,lwd=3,col=1:3)
> dev.off()
>
> Jim
>
> On Wed, Jun 28, 2023 at 6:33 PM Anupam Tyagi <anuptyagi using gmail.com> wrote:
> >
> > Hello,
> >
> > I want to plot the following kind of data (percentage of respondents
> from a
> > survey) that varies by Income into many small *line* graphs in a panel of
> > graphs. I want to omit "No Answer" categories. I want to see how each one
> > of the categories (percentages), "None", " Equity", etc. varies by
> Income.
> > How can I do this? How to organize the data well and how to plot? I
> thought
> > Lattice may be a good package to plot this, but I don't know for sure. I
> > prefer to do this in Base-R if possible, but I am open to ggplot. Any
> ideas
> > will be helpful.
> >
> > Income
> > $10 $25 $40 $75 > $75 No Answer
> > MF 1 2 3 4 5 9
> > None 1 3.05 2.29 2.24 1.71 1.30 2.83
> > Equity 2 29.76 28.79 29.51 28.90 31.67 36.77
> > Debt 3 31.18 32.64 34.31 35.65 37.59 33.15
> > Hybrid 4 36.00 36.27 33.94 33.74 29.44 27.25
> > Bank AC
> > None 1 46.54 54.01 59.1 62.17 67.67 60.87
> > Current 2 24.75 24.4 25 24.61 24.02 21.09
> > Savings 3 25.4 18.7 29 11.48 7.103 13.46
> > No Answer 9 3.307 2.891 13.4 1.746 1.208 4.577
> >
> > Thanks.
> > --
> > Anupam.
> >
> >         [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-help using 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.
>


-- 
Anupam.

	[[alternative HTML version deleted]]



More information about the R-help mailing list