小编El *_*iño的帖子

ggplot图例顺序不匹配

我是 R/ggplot 的新手,我已经调查了 StackOverflow 的类似问题,但无济于事。对于家里的ggplot高手来说可能是个小问题,如果是这样,我期待一个快速的答案!

所以这里是:我试图从存储在数据框中的变量绘制 4 条曲线,同时使用颜色和线型。不幸的是,图例标签与曲线不匹配,这违背了图例的全部目的。

这是图: 4 条标签不匹配的曲线

这是生成它的代码:

# declare variables
alpha = 0.5
m = 500
x = seq(m)
fdr_thresh = x/m*alpha
lvl_thresh = rep(alpha,m)
pvals = sin(2*pi*x/20)
pvalsA = exp(-x/100)*cos(2*pi*x/20)

# plot
df <- data.frame(pvals=pvals, pvalsA = pvalsA, FDR = fdr_thresh, level = lvl_thresh, x=x)
p4 <- ggplot(data = df) + geom_line(aes(x=x, y=pvals,color="Pure Sinusoid",linetype="Pure Sinusoid"))
p4 <- p4 + geom_line(aes(x=x, y=pvalsA,color="Damped Sinusoid",linetype="Damped Sinusoid"))
p4 <- p4 + geom_line(aes(x=x, y=FDR,color = 'FDR', linetype='FDR')) 
p4 <- …
Run Code Online (Sandbox Code Playgroud)

r legend ggplot2

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

Excel工作表到Numpy数组

我正在尝试做一个令人难以置信的简单事情:将Excel工作表的一部分加载到Numpy数组中.我找到了一个有效的kludge,但它令人尴尬的是unpythonic:说我的工作表加载为"ws",代码:

A = np.zeros((37,3))
for i in range(2,39):
   for j in range(1,4):
      A[i-2,j-1]= ws.cell(row = i, column = j).value
Run Code Online (Sandbox Code Playgroud)

将"ws"的内容加载到数组A.

必须有一个更优雅的方式来做到这一点.例如,csvread允许更自然地执行此操作,虽然我可以将.xlsx文件转换为csv文件,但使用openpyxl的整个目的是避免转换.那么我们就是强大的Intertubes的集体智慧:什么是更加琐碎的方式来执行这个概念上的微不足道的操作?

提前感谢您的回答.

PS:我通过Spyder在Mac上运行Python 2.7.5,是的,我确实阅读了openpyxl教程,这是我做到这一点的唯一原因.

python python-2.7 openpyxl

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

标签 统计

ggplot2 ×1

legend ×1

openpyxl ×1

python ×1

python-2.7 ×1

r ×1