几个有趣的R代码
此图代表我的心
n=50000; r=0.7;r_e=(1-r*r)^.5; X=rnorm(n); Y=X*r+r_e*rnorm(n); Y=ifelse(X>0,Y,-Y); plot(X,Y,col="pink")
几个有趣的R代码
R语言脚本,有趣的图
我心因你而有爱
n=50000; r=0.7;r_e=(1-r*r)^.5; X=rnorm(n); Y=X*r+r_e*rnorm(n); Y=ifelse(X>0,Y,-Y); a<-sample(c(2,6,7,8),50000,T) b<-sample(c(76,79,86,69),50000,T) plot(X,Y,col=0) text(X,Y,"lOVE",col=a)
此图太猥琐了,运行结果就不贴上了
xrange = c(-15, 15) yrange = c(0, 16) plot(0, xlim = xrange, ylim = yrange, type = "n") #plot(xran ...
DKM_1.3---CCM收敛交叉映射
今日更新DKM_1.3,版本更新内容:CCM收敛交叉映射、两阶段嵌套泰尔指数、三阶段嵌套泰尔指数。此前嵌套泰尔指数分解是单独的脚本,这次一并合并到DKM_1.3中。
目前因果检验常用的格兰杰因果检验,主要是依据时间序列的预测能力来识别序列之间的因果关系。如,我们有一个模型来预测时间序列Y,如果在模型中移除时间序列X,则模型对Y的预测能力大大降低,此时可以说X是Y的一个原因。
但是,格兰杰因果检验的前提是时间序列之间要满足可分离性,这就要求系统之间,各变量是纯随机的,或者线性的。但是,有些系统中,各个时间序列之间彼此依赖,并不能分离,又或者彼此之间是弱耦合的,这时格兰杰因果检验就不再适用。
针对这个问题,Sugihara等(2012)在Detecting Causality in Complex
Ecosystems这篇文章中,提出了CCM收敛交叉映射算法。
具体做法如下:
假设有X和Y两个时间序列如下:
{X} = { X(1) ,X(2) ,X(3) ,…,X(L) }
{Y} = { Y(1) ,Y(2) ,Y(3) ,…,Y(L) }
分别构造X和Y的影子流形M ...
用R语言做圆形条形图
圆形条形图是一种条形图,其中条形图沿圆形而不是线显示。本页旨在教您如何制作带有组的圆形条形图。
第一步是建立一个圆形的条形图,圆圈中有一个中断。实际上,我只是在初始数据框的末尾添加了几行空行:
12345678910111213141516171819202122232425262728293031323334353637383940# 图1library(tidyverse) # Create datasetdata <- data.frame( individual=paste( "Mister ", seq(1,60), sep=""), value=sample( seq(10,100), 60, replace=T)) # Set a number of 'empty bar'empty_bar <- 10 # Add lines to the initial datasetto_add <- matrix(NA, empty_bar, ncol(data))colnames(to_add) ...
用R语言做分组核密度图
多密度图是表示多个组的密度图。它允许比较它们的分布。这种图表的问题在于它很容易变得混乱:组相互重叠并且图形变得难以阅读。
一个简单的解决方法是使用透明度。但是,它不能完全解决问题,通常最好考虑本文档中进一步建议的示例。
不透明的分组核密度图:
1234567891011121314# 图1library(ggplot2)library(hrbrthemes)library(dplyr)library(tidyr)library(viridis)# Without transparency (left)p1 <- ggplot(data=diamonds, aes(x=price, group=cut, fill=cut)) + geom_density(adjust=1.5) + theme_ipsum()p1
图1
透明的分组核密度图:
1234p2 <- ggplot(data=diamonds, aes(x=price, group=cut, fill=cut)) + geom_density(adjust=1.5, ...
最基本的桑基图
桑基图(Sankey
diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,右图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。因1898年Matthew
Henry Phineas Riall Sankey绘制的“蒸汽机的能源效率图”而闻名,此后便以其名字命名为“桑基图”。
桑基图表示流,即从一个节点到另一个节点的加权连接。输入数据可以以
2 种不同的格式存储:
连接数据框(3 列)
关联矩阵(方阵)
这篇文章描述了如何从这两种类型的输入构建一个基本的桑基图。
代码如下:
12345678910111213141516171819202122232425262728293031# Librarylibrary(networkD3)library(dplyr) # A connection data frame is a list of flows with intensity for each flowlinks <- data.frame( source=c("group ...
使用ggplot2添加文本标签
这里演示如何使用geom_text()将文本添加为标记。它的工作原理与geom_point()几乎相同,但添加的是文本而不是圆圈。
label: 你想显示什么文本
nudge_x和nudge_y: 沿 X 和 Y
轴移动文本
check_overlap尽量避免文本重叠。请注意,一个名为的包ggrepel进一步扩展了这个概念
代码如下:
1234567891011121314#图1 基本图library(ggplot2) # Keep 30 first rows in the mtcars natively available datasetdata=head(mtcars, 30) # 1/ add text with geom_text, use nudge to nudge the textggplot(data, aes(x=wt, y=mpg)) + geom_point() + # Show dots geom_text( label=rownames(data), nudge_x = 0.25, nudge_y = 0.25, ...
利用R语言绘制小提琴图加箱线图
小提琴图加箱线图的代码,如下:
123456789101112131415161718192021222324252627282930# Librarieslibrary(ggplot2)library(dplyr)library(hrbrthemes)library(viridis)# create a datasetdata <- data.frame( name=c( rep("A",500), rep("B",500), rep("B",500), rep("C",20), rep('D', 100) ), value=c( rnorm(500, 10, 5), rnorm(500, 13, 1), rnorm(500, 18, 1), rnorm(20, 25, 4), rnorm(100, 12, 1) ))# sample sizesample_size = data %>% group_by(name) %>% summarize(num=n() ...
用ggally包绘制散点图矩阵
ggally包的ggpairs()功能GGally允许建立一个散点图矩阵。
每对数值变量的散点图绘制在图的左侧。Pearson
相关显示在右侧。可变分布在对角线上可用。
代码如下:
12345678910# 评估变量的分布和相关性library(GGally) # 创建原始数据data <- data.frame( var1 = 1:100 + rnorm(100,sd=20), v2 = 1:100 + rnorm(100,sd=27), v3 = rep(1, 100) + rnorm(100, sd = 1)) data$v4 = data$var1 ** 2 data$v5 = -(data$var1 ** 2) ggpairs(data, title="correlogram with ggpairs()")
效果图
用ggplot2作气泡图
气泡图是具有第三个维度的散点图,第三维度通过散点的大小来表示。画气泡图至少需要三个维度的数据,分别是x,y和表示气泡大小的维度。下面用一个例子来说明,其中,x是人均GDP,y是预期寿命,圆圈大小表示人口,代码如下:
1234567891011# 导入包library(ggplot2)library(dplyr)#gapminder提供了数据集library(gapminder)data <- gapminder %>% filter(year=="2007") %>% dplyr::select(-year)# 最基本的气泡图ggplot(data, aes(x=gdpPercap, y=lifeExp, size = pop)) + geom_point(alpha=0.7)
图1
控制圆的大小:scale_size()
我们需要在上一张图表上改进的第一件事是气泡大小。scale_size()允许使用range参数设置最小和最大圆圈的大小。请注意,您可以使用
自定义图例名称name。
注意:圆圈经常重叠。为避 ...
深交所信息考评数据2005-2021
深交所年度信息考评分为A、B、C、D四个等级,考评范围重点关注信息披露质量,包括信披的真实性、准确性、完整性、及时性、公平性、合法合规性和有效性,以及自愿披露的规范情况、社会责任履行披露情况和信披事务管理情况。同时也关注上市公司投资者关系管理、监管处罚以及与交易所工作配合情况等。
这里公布的数据年份为2005年至2021年,数据截图如下:
获取数据,直接加我微信canglang12002即可。


