编写一个接口Geometry,该接口有一个求面积的方法getArea()。用长方形类Recta

Python012

编写一个接口Geometry,该接口有一个求面积的方法getArea()。用长方形类Recta,第1张

public interface Geometry {

public int getArea()

}

class Rectangle implements Geometry {

private int width//宽

private int high//长

public Rectangle() {//空参构造

}

public Rectangle(int width, int high) {//有参构造

this.width = width

this.high = high

}

@Override

public int getArea() {

return width*high//返回长方形的面积

}

}

//下面测试类可以单独写

class RectaTest {

public static void main(String[] args) {

Rectangle r = new Rectangle(23,10)//给width ,high赋值

System.out.println(r.getArea())//面积

}

}

文章较长,点击直达我的 博客 ,浏览效果更好。

本文内容基本是来源于 STHDA ,这是一份十分详细的 ggplot2 使用指南,因此我将其翻译成中文,一是有助于我自己学习理解,另外其他R语言爱好者或者可视化爱好者可以用来学习。翻译过程肯定不能十全十美,各位读者有建议或改进的话,十分欢迎发 Email ( [email protected] )给我。

ggplot2 是由 Hadley Wickham 创建的一个十分强大的可视化R包。按照 ggplot2 的绘图理念,Plot(图)= data(数据集)+ Aesthetics(美学映射)+ Geometry(几何对象):

ggplot2 中有两个主要绘图函数:qplot()以及ggplot()。

ggplot2 绘制出来的ggplot图可以作为一个变量,然后由print()显示出来。

根据数据集, ggplot2 提供不同的方法绘制图形,主要是为下面几类数据类型提供绘图方法:

安装 ggplot2 提供三种方式:

加载

本文将使用数据集 mtcars

qplot()类似于R基本绘图函数plot(),可以快速绘制常见的几种图形:散点图、箱线图、小提琴图、直方图以及密度曲线图。其绘图格式为:

其中:

也可以添加平滑曲线

还有其他参数可以修改,比如点的形状、大小、颜色

箱线图

小提琴图

点图

直方图

密度图

上文中的qplot()绘制散点图:

在ggplot()中完全可以如下实现:

改变点形状、大小、颜色等属性

绘图过程中常常要用到转换(transformation),这时添加图层的另一个方法是用stat_*()函数。

下例中的geom_density()与stat_density()是等价的

等价于

使用数据集wdata,先计算出不同性别的体重平均值

先绘制一个图层a,后面逐步添加图层

可能添加的图层有:

改变颜色

可以通过修改不同属性如透明度、填充颜色、大小、线型等自定义图形:

使用以下函数:

根据sex修改颜色,将sex映射给line颜色

修改填充颜色以及透明度

添加均值线以及手动修改颜色

将sex映射给颜色

手动修改颜色

y轴显示为密度

修改颜色以及线型

将sex映射给线颜色

修改填充颜色

使用数据集mtcars, 先创建一个ggplot图层

可能添加的图层有:

将变量cyl映射给点的颜色和形状

自定义颜色

可以添加回归曲线

散点图+回归线

使用loess方法

将变量映射给颜色和形状

使用数据集 faithful

实际上 geom_jitter() 是 geom_point(position="jitter") 的简称,下面使用数据集 mpg

增加抖动防止重叠

其中两个参数:

参数label用来指定注释标签

使用数据集 diamonds

创建ggplot图层,后面再逐步添加图层

可添加的图层有:

geom_bin2d() 将点的数量用矩形封装起来,通过颜色深浅来反映点密度

设置bin的数量

geom_hex()依赖于另一个R包 hexbin ,所以没安装的先安装:

修改bin的数目

主要是如何通过线来连接两个变量,使用数据集 economics

先创建一个ggplot图层,后面逐步添加图层

可添加的图层有:

使用数据集 ToothGrowth ,其中的变量len(Tooth length)是连续变量,dose是离散变量。

创建图层

可添加的图层有:

添加有缺口的箱线图

按dose分组映射给颜色

将dose映射给填充颜色

按supp进行分类并映射给填充颜色

添加中值点

与箱线图结合

将dose映射给颜色进行分组

添加中值点