小编use*_*648的帖子

pdf中的ggplot嵌入字体

我一直在使用以下指南导出用ggplotpdf 制作的图:plot fonts guide

它提出了一些字体底部的问题,这些字体没有按照它们应该出现,这在我下面的例子中发生.字体包豪斯93中的文本正确显示,而Calibri中的文本显示不正确.

有没有人找到解决这个问题的方法?

library(ggplot2)
library(plyr)
library(grid)
library(gridExtra)
library(extrafont)

data1<-as.data.frame(1:5)
data1[,2]<-as.data.frame(c(1,3,5,7,9))
data1[,3]<-as.data.frame(c(2,4,6,8,10))
colnames(data1)<-c("x","y1","y2")

ggplot(data1, aes(x=x)) + 
  geom_line(aes(y = y1, colour = "Taux selon DEF"), size=0.61, colour="black") +  
  geom_line(aes(y = y2, colour = "Taux selon EC"), size=0.61, colour="black", linetype="dashed") + 
  xlab("X axis lab") + ylab("Y axis lab)") +
  annotate("text", x=1, y=4, label="Some text here", size=2, family="Bauhaus 93") +
  annotate("text", x=4, y=1, label="More text here", size=2, family="Calibri") +
  theme_bw() + theme(legend.title = element_blank(),
                     legend.key = element_rect(fill=NA),
                     panel.border …
Run Code Online (Sandbox Code Playgroud)

pdf fonts r ggplot2

20
推荐指数
1
解决办法
6440
查看次数

在R中的多个列中有效地求和

我有以下精简数据集:

a<-as.data.frame(c(2000:2005))
a$Col1<-c(1:6)
a$Col2<-seq(2,12,2)

colnames(a)<-c("year","Col1","Col2")

for (i in 1:2){
  a[[paste("Var_", i, sep="")]]<-i*a[[paste("Col", i, sep="")]]
}
Run Code Online (Sandbox Code Playgroud)

我想总结列Var1和Var2,我使用:

a$sum<-a$Var_1 + a$Var_2
Run Code Online (Sandbox Code Playgroud)

实际上我的数据集要大得多 - 我想将Var_1与Var_n相加(n可以达到20).必须有一种更有效的方法来做到这一点:

 a$sum<-a$Var_1 + ... + a$Var_n
Run Code Online (Sandbox Code Playgroud)

r sum

16
推荐指数
3
解决办法
6万
查看次数

R中加权数据的频率表

我需要按年龄和婚姻状况计算个人的频率,所以通常我会使用:

    table(age, marital_status)
Run Code Online (Sandbox Code Playgroud)

然而,每个人在采样数据后具有不同的权重.如何将其合并到我的频率表中?

r frequency-distribution weighted

14
推荐指数
2
解决办法
1万
查看次数

用ggplot在两行之间的阴影区域

我用ggplot生成下面的两行,并且想要遮蔽两行之间的特定区域,即y =x²大于y = 2x,其中2 <= x <= 3.

# create data #

x<-as.data.frame(c(1,2,3,4))
colnames(x)<-"x"
x$twox<-2*x$x
x$x2<-x$x^2

# Set colours #

blue<-rgb(0.8, 0.8, 1, alpha=0.25)
clear<-rgb(1, 0, 0, alpha=0.0001)

# Define region to fill #

x$fill <- "no fill"
x$fill[(x$x2 > x$twox) & (x$x <= 3 & x$x >= 2)] <- "fill"

# Plot #

ggplot(x, aes(x=x, y=twox)) + 
  geom_line(aes(y = twox)) + 
  geom_line(aes(y = x2)) +
  geom_area(aes(fill=fill)) +
  scale_y_continuous(expand = c(0, 0), limits=c(0,20)) +
  scale_x_continuous(expand = c(0, 0), limits=c(0,5)) + …
Run Code Online (Sandbox Code Playgroud)

r fill ggplot2

11
推荐指数
2
解决办法
2万
查看次数

R ggplot boxplot:更改y轴限制

我正在使用ggplot以下数据创建几个箱形图:

df<-(structure(list(Effect2 = c("A2", "A2", "A2", "A2", "A2", "A2", 
"A2", "A2", "A2", "A2", "A2", "A2", "A2", "A2", "A1", "A1", "A1", 
"A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", "A1", 
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", 
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", 
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", 
"A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", "A3", 
"A3", "A3", "B1", …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 boxplot

9
推荐指数
1
解决办法
3万
查看次数

带有NA值的ggplot折线图

我遇到麻烦ggplot试图在同一图表上绘制2个不完整的时间序列,其中y数据在x轴(年)上没有相同的值 - 因此,NA存在于某些年份:

test<-structure(list(YEAR = c(1937, 1938, 1942, 1943, 1947, 1948, 1952, 
1953, 1957, 1958, 1962, 1963, 1967, 1968, 1972, 1973, 1977, 1978, 
1982, 1983, 1986.5, 1987, 1993.5), A1 = c(NA, 24, NA, 32, 32, 
NA, 34, NA, NA, 18, 12, NA, 10, NA, 11, NA, 15, NA, 24, NA, NA, 
25, 26), A2 = c(40, NA, 38, NA, 25, NA, 26, NA, 20, NA, 17, 
17, 17, NA, 16, 18, 21, 18, 17, 25, NA, NA, 26)), .Names = …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 na

8
推荐指数
2
解决办法
2万
查看次数

使用ff包导入文本文件

我有一个450万行和90列的文本文件导入到R.使用read.table我得到cannot allocate vector of size...错误消息所以我尝试使用ff包导入数据子集之前提取我感兴趣的观察结果(有关详细信息,请参阅我之前的问题) :将选择crteria添加到read.table).

所以,我使用以下代码导入:

test<-read.csv2.ffdf("FD_INDCVIZC_2010.txt", header=T)
Run Code Online (Sandbox Code Playgroud)

但是这会返回以下错误消息:

Error in read.table.ffdf(FUN = "read.csv2", ...) : 
only ffdf objects can be used for appending (and skipping the first.row chunk)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

以下是文本文件的前5行:

    CANTVILLE.NUMMI.AEMMR.AGED.AGER20.AGEREV.AGEREVQ.ANAI.ANEMR.APAF.ARM.ASCEN.BAIN.BATI.CATIRIS.CATL.CATPC.CHAU.CHFL.CHOS.CLIM.CMBL.COUPLE.CS1.CUIS.DEPT.DEROU.DIPL.DNAI.EAU.EGOUL.ELEC.EMPL.ETUD.GARL.HLML.ILETUD.ILT.IMMI.INAI.INATC.INFAM.INPER.INPERF.IPO ...
1             1601;1;8;052;54;051;050;1956;03;1;ZZZZZ;2;Z;Z;Z;1;0;Z;4;Z;Z;6;1;1;Z;16;Z;03;16;Z;Z;Z;21;2;2;2;Z;1;2;1;1;1;4;4;4,02306147485403;ZZZZZZZZZ;1;1;1;4;M;22;32;AZ;AZ;00;04;2;2;0;1;2;4;1;00;Z;54;2;ZZ;1;32;2;10;2;11;111;11;11;1;2;ZZZZZZ;1;2;1;4;41;2;Z
2             1601;1;8;012;14;011;010;1996;03;3;ZZZZZ;2;Z;Z;Z;1;0;Z;4;Z;Z;6;2;8;Z;16;Z;ZZ;16;Z;Z;Z;ZZ;1;2;2;2;Z;2;1;1;1;4;4;4,02306147485403;ZZZZZZZZZ;3;3;3;1;M;11;11;ZZ;ZZ;00;04;2;2;0;1;2;4;1;14;Z;54;2;ZZ;1;32;Z;10;2;23;230;11;11;Z;Z;ZZZZZZ;1;2;1;4;41;2;Z
3             1601;1;8;006;05;005;005;2002;03;3;ZZZZZ;2;Z;Z;Z;1;0;Z;4;Z;Z;6;2;8;Z;16;Z;ZZ;16;Z;Z;Z;ZZ;1;2;2;2;Z;2;1;1;1;4;4;4,02306147485403;ZZZZZZZZZ;3;3;3;1;M;11;11;ZZ;ZZ;00;04;2;2;0;1;2;4;1;14;Z;54;2;ZZ;1;32;Z;10;2;23;230;11;11;Z;Z;ZZZZZZ;1;2;1;4;41;2;Z
4            1601;1;8;047;54;046;045;1961;03;2;ZZZZZ;2;Z;Z;Z;1;0;Z;4;Z;Z;6;1;6;Z;16;Z;14;974;Z;Z;Z;16;2;2;2;Z;2;2;4;1;1;4;4;4,02306147485403;ZZZZZZZZZ;2;2;2;1;M;22;32;MN;GU;14;04;2;2;0;1;2;4;1;14;Z;54;2;ZZ;2;32;1;10;2;11;111;11;11;1;4;ZZZZZZ;1;2;1;4;41;2;Z
5             1601;2;9;053;54;052;050;1958;02;1;ZZZZZ;2;Z;Z;Z;1;0;Z;2;Z;Z;2;1;2;Z;16;Z;12;87;Z;Z;Z;22;2;1;2;Z;1;2;3;1;1;2;2;4,21707670353782;ZZZZZZZZZ;1;1;1;2;M;21;40;GZ;GU;00;07;0;0;0;0;0;2;1;00;Z;54;2;ZZ;1;30;2;10;3;11;111;ZZ;ZZ;1;1;ZZZZZZ;2;2;1;4;42;1;Z
Run Code Online (Sandbox Code Playgroud)

import r large-data ff

6
推荐指数
2
解决办法
4248
查看次数

R在组内创建ID

我有以下数据集:

df<-structure(list(IDFAM = c("2010 7599 2996 1", "2010 7599 3071 1", 
"2010 7599 3071 1", "2010 7599 3660 1", "2010 7599 4736 1", "2010 7599 6235 1", 
"2010 7599 6299 1", "2010 7599 9903 1", "2010 7599 11013 1", 
"2010 7599 11778 1", "2010 7599 11778 1", "2010 7599 12248 1", 
"2010 7599 13127 1", "2010 7599 14261 1", "2010 7599 16280 1", 
"2010 7599 16280 1", "2010 7599 16280 1", "2010 7599 16280 1", 
"2010 7599 16280 1", "2010 …
Run Code Online (Sandbox Code Playgroud)

r

6
推荐指数
1
解决办法
9566
查看次数

当大小映射到变量时,ggplot2 geom_point 图例

我正在创建一个图,其中点的大小与给定变量的值成正比,然后我将其平方以增加点之间的大小差异...

# Using example from https://www3.nd.edu/~steve/computing_with_data/11_geom_examples/ggplot_examples.html #

library(ggplot2)
str(mtcars)

p <- ggplot(data = mtcars, aes(x = wt, mpg))
p + geom_point(aes(size = (qsec^2)))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

从结果图中,有没有办法指定图例中显示的点的大小并更改图例标签以反映原始值而不是这些值的平方?(在情节上手工编辑)

legend ggplot2

3
推荐指数
1
解决办法
5679
查看次数

ggplot2 分类 x 轴的不同面宽度

我正在绘制分类数据的不同方面:

df <- as.data.frame(as.factor(c("A","B","C","D","E","F")))
names(df) <- "Xvar"
df$Yvar <- c(2,1,4,5,3,7)
df$facet <- c(rep("facet 1",2),rep("facet 2",4))

ggplot(df, aes(x=Xvar, y=Yvar, group=1)) +
  geom_line() +
  facet_wrap(~facet, scales="free_x")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我怎样才能使仅包含两个类别的方面 1 的大小是包含四个类别的方面 2 的一半?即每个面的宽度与分类 x 轴数据点的数量成正比?我试过scales="free_x"无济于事。

r facet ggplot2

3
推荐指数
1
解决办法
1381
查看次数

标签 统计

r ×9

ggplot2 ×6

boxplot ×1

facet ×1

ff ×1

fill ×1

fonts ×1

frequency-distribution ×1

import ×1

large-data ×1

legend ×1

na ×1

pdf ×1

sum ×1

weighted ×1