R语言ggplot-Slope chart(坡度图)绘制考试排名变化

R语言ggplot-Slope chart(坡度图)绘制考试排名变化

R语言ggplot-Slope chart(坡度图)绘制考试排名变化_第1张图片

注意:一些图像细节需要导出矢量图在其他软件中进一步调整,小编这里使用的是RStudio+福昕PDF编辑器。

1.准备数据

科目,期中,期末
语文,1,6
数学,3,1
英语,6,2
生物,6,2
历史,2,1
地理,1,1
思政,15,4
总分,2,1

将以上文本保存至sc.csv中,并将编码设为UTF-8.

R语言ggplot-Slope chart(坡度图)绘制考试排名变化_第2张图片

2.导入数据

打开RStudio软件

# setwd(你的文件目录)
# header=T表示数据中的第一行是列名,如果没有列名就用header=F
# R读取数据的时候,默认会把列名里的空格变成 ".",check.names=F就不会变了
dt <- read.csv("sc.csv", header = T)

3.导入工具包

# install.packages("ggplot2")
# install.packages("reshape2")
library(ggplot2)
library(reshape2)

4.转换数据框格式

# 注释:将原始的宽数据变成长数据,方便画图
data_melt<-melt(dt,id.vars = "科目")

5.开始绘制坡度图

p<-ggplot(data_melt,aes(x=variable,y=value,group=科目)) +
    geom_line(color="gray", linewidth=1) +
    geom_point(aes(fill=科目),shape=21, size=3) +
    scale_y_continuous(breaks = seq(1,16,2)) +
    theme_minimal() + labs(x="期中期末排名变化",y="排名")
p

R语言ggplot-Slope chart(坡度图)绘制考试排名变化_第3张图片

其实,你可以发现这里的ggplot没有坡度图函数,实际上是折线图geom_line()和散点图geom_point()的叠加。

PDF编辑器中添加细节

R语言ggplot-Slope chart(坡度图)绘制考试排名变化_第4张图片

导出的尺寸越小,最终图片里的元素越大。

image-20221222070819045

当然也可以导出svg矢量图在Adobe illustrator等软件中添加细节。

参考资料

R语言作图——Slope chart(坡度图)

你可能感兴趣的:(R,r语言,开发语言,数据分析)