使用R进行多元时序指标趋势可视化

本文介绍了如何在数据时代利用R进行多元时序指标的趋势分析。通过归一化处理不同量级的数据,使得各指标能在同一图表中展示。文章提到在社交网络分析中,对PV、Click、Reply、Share、Like等指标进行归一化,然后使用R代码实现可视化,展示了具体的操作过程和最终的可视化效果。
摘要由CSDN通过智能技术生成

数据时代,经常需要将多种时序数据指标放在一起进行分析,但各个数据指标量级不一致,不方便放在一张趋势图中进行分析,解决方法是把各个指标数据归一化,对于时序数据[x1, x2...xn],可以使用归一化规则为xn = xn*100/avg(x)。


之前在某社交网络公司,对于feed流,需要对pv, click, reply, share, like等指标进行趋势分析,使用的解决方案是使用python连mysql获取数据并进行归一化运算,然后使用chartDirector图形库进行可视化展现。最终结果可视化展示结果如下:



利用R同样可以实现类似功能,代码如下:

xlab = "日期";
ylab = "pv click趋势";
main = "页面pv click周趋势图";
lty = c("dotted", "solid");
col=c("blue", "red");
data_desc = c("pv", "click");

pv=c(18000, 19000, 17000, 16000, 13000, 15000, 17000);
click=c(144, 190, 150, 170, 133, 145, 189);
dates = as.Date(c("2014-03-17", "2014-03-18",  "2014-03-19", "2014-03-
时序网络模型可视化可以帮助我们更好地理解网络的演化过程,以下是一个简单的时序网络模型可视化案例: 假设我们有一个 4 个节点、连续 5 个时间段的动态网络数据,每个时间段内节点之间的连接关系如下: ``` Time 1: 1--2, 2--3, 3--4 Time 2: 1--3, 2--4 Time 3: 1--2, 1--4, 2--3 Time 4: 1--3, 2--4, 3--4 Time 5: 1--2, 2--4, 3--4 ``` 我们可以使用 Python 中的 NetworkX 库和 Matplotlib 库进行可视化,具体的代码实现如下: ```python import networkx as nx import matplotlib.pyplot as plt # 构建动态网络模型 G = nx.DiGraph() G.add_edges_from([(1,2),(2,3),(3,4)]) H = nx.DiGraph() H.add_edges_from([(1,3),(2,4)]) I = nx.DiGraph() I.add_edges_from([(1,2),(1,4),(2,3)]) J = nx.DiGraph() J.add_edges_from([(1,3),(2,4),(3,4)]) K = nx.DiGraph() K.add_edges_from([(1,2),(2,4),(3,4)]) # 将动态网络模型存储为列表 dynamic_network = [G, H, I, J, K] # 定义节点的位置 pos = {1: (0, 0), 2: (1, 0), 3: (2, 0), 4: (1, -1)} # 绘制动态网络模型 fig, ax = plt.subplots() for i in range(len(dynamic_network)): G = dynamic_network[i] edges = [(u, v) for u, v in G.edges()] colors = ['r' if G[u][v]['color'] == 'r' else 'b' for u, v in G.edges()] labels = {node: node for node in G.nodes()} nx.draw_networkx_nodes(G, pos, ax=ax, node_size=300) nx.draw_networkx_labels(G, pos, labels, font_size=12, font_color='w', font_family='sans-serif', ax=ax) nx.draw_networkx_edges(G, pos, edgelist=edges, edge_color=colors, arrows=True, ax=ax) plt.axis('off') plt.show() ``` 以上代码将动态网络模型存储为列表 `dynamic_network`,并定义了节点的位置 `pos`。在绘制动态网络模型时,我们循环遍历每个时间段的网络,绘制网络的节点、标签和边,并根据边的颜色判断边的方向。最终得到的可视化结果如下: ![时序网络模型可视化案例](https://i.imgur.com/XKwfm7q.png) 可以看到,随着时间的推移,网络中的节点和边的连接关系逐渐发生变化,通过可视化可以更加直观地观察网络的演化过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值