R基础作图 作业

使用的数据是一个财务风险评级数据表格。每行是一个公司,每列是一个财务指标,如下:

companycode:公司代码

roe:净资产收益率

roa:资产回报率

npr:净利润率

tat:总资产周转次数

cat:流动资产周转次数

art:应收账款周转次数

dar:资产负债率

cr:流动比率

qr:速动比率

industrycode:行业代码

frr:评级(3最好,5最差)

为了研究各个财务指标与最终评级之间的关系。首先将frr变量视为factor变量,研究其与其它变量之间的关系。作图代码如下:

qr~frr关系

attach(data_frr)

plot(qr~as.factor(frr>3))

其它指标同理。结果见图。

npr_frr(factor)

dar_frr(factor)

cr_frr(factor)

cat_frr(factor)

tat_frr(factor)

roe_frr(factor)

roa_frr(factor)

qr_frr(factor)

 

此外,在利用scatterplot matrix后发现qr(流动比率) 与cr(速动比率)存在高度相关关系,于是作图研究两者关系。代码如下:

attach(data_frr)
par(pch=16,pin=c(3,3)) ## 设置作图格式
plot(qr,cr,xlab="流动比率",ylab="速动比率")##做cr~qr图,并设定x,y轴名
title(main=" Linear Regression of cr~qr")##设置图标题
abline(lm(cr~qr),col="red")##插入拟合直线
idx <- identify(qr,cr,label=frr)##设置查询功能,显示选择点的frr值(如3,4)
data_frr[idx,]

结果见图。

cr~qr

plotEx.data.frame 作业:程序部分

plotEx.data.frame <- function (x, ...)
{
plot2 <- function(x, xlab = names(x)[1L], ylab = names(x)[2L], ...)
plot(x[[1L]], x[[2L]], xlab = xlab, ylab = ylab, ...)
if (!is.data.frame(x))
stop("'plot.data.frame' applied to non data frame")
if (ncol(x) == 1)
{
x1 <- x[[1L]]
cl <- class(x1)
if (cl %in% c("integer", "numeric"))
{ if(length(unique(x1))<=5)
pie(table(x1)) }
else
{ stripchart(x1, ...) }
}
else if (ncol(x) == 2)
{
x1 <- x[[1L]]
x2 <- x[[2L]]
if(length(unique(x1))<=5 & length(unique(x2))>5)
{ boxplot(x2~x1)
points(x1,jitter(x2)) }
else if (length(unique(x1))>5 & length(unique(x2))<=5)
{ boxplot(x1~x2)
points(x2,jitter(x1)) }
else if (length(unique(x1))<=5 & length(unique(x2))<=5)
{ library(vcd)
mosaic(ta<-table(x1,x2)) }
else if (length(unique(x1))>5 & length(unique(x2))>5)
{ plot2(x,...)}
}
else
{ pairs(data.matrix(x), ...) }

}