什么是用于大型数据集的最快的力导向网络图引擎?
我们目前有一个动态更新的网络图,其大约 1,500节点和 2,000边缘.这是不断增长的.我们当前的布局引擎使用 prefuse - 尤其是实力的定向布局 - 大约需要10分钟的服务器才能获得一个漂亮,稳定的布局. 我看上去有点 graphviz 的sfpd算法,但尚未对其进行测试... 我应该查看更快的替代方案吗? 我不在乎节点和边缘的视觉外观 - 我们分别处理 - 仅将x, y放在节点上. 我们确实需要能够修补图表的特定部分的布局属性,例如,为某些节点应用特殊的更紧密或松散的弹簧. 提前感谢,如果您需要更多特定信息来回答! ,请发表评论. 编辑:我特别在寻找布局引擎选项之间的速度比较.基准,具体示例或仅仅是个人经验就足够了! 解决方案 我会看OGDF,特别是 http://www.ogdf.net/doku.php/tech:howto:frcl 我没有使用过OGDF,但是我确实知道快速多极是一种很好的性能算法,并且当您处理与" force
4 2023-05-23
编程技术问答社区
如何在Tableau中把不同的y轴合并成一个y轴
在Tableau中,我想弄清楚如何将Y轴融合给前吸烟者,从未吸烟,每天抽烟和抽烟.我想要一个Y轴,范围为0.00至1.感谢您的任何帮助,谢谢. 解决方案 不确定您的理想图形输出,而是绘制每个单独的度量.将[测量值]药丸拖到Y轴上,然后过滤您所需的措施.然后,您可以将[测量名称]拖动到颜色架子以为每个度量制作一条线.
2 2023-05-23
编程技术问答社区
虚化的Holoview不显示地块
我正在尝试创建一个环境,在该环境中,我可以使用Pycharm开发Python代码,同时使用Holoviews和Bokeh创建交互式图表. 我遵循相比之下,当我直接调用Bokeh的方法时,如这个示例发射,我可以交互操纵图表.我想使用Holoviews(+Bokeh)实现这一目标. 非常感谢您提前的帮助. 我的库: Python 3.4.5 Holoviews 1.8.1 bokeh 0.12.6 参数1.5.1 ipython 6.1.0 Jupyter 1.0.0 熊猫0.20.3 numpy 1.13.1 Scipy 0.19.1 解决方案 您唯一需要将添加到代码的是show(hv.render(your_holoviews_plot)),如下: import holoviews as hv hv.extension('bokeh') from bokeh.plotting import show show(hv.render(y
14 2023-05-23
编程技术问答社区
将图形上的所有节点连接在一起
我有以下网络图: library(tidyverse) library(igraph) set.seed(123) n=5 data = tibble(d = paste(1:n)) relations = data.frame(tibble( from = sample(data$d), to = lead(from, default=from[1]), )) graph = graph_from_data_frame(relations, directed=T, vertices = data) V(graph)$color
6 2023-05-22
编程技术问答社区
了解 "list "和 "do.call "命令
在这里(直接将标题和标签添加到Visnetwork ) ,我学会了如何将标题直接添加到使用" venigraph()"函数的图表中: library(tidyverse) library(igraph) library(visNetwork) set.seed(123) n=15 data = data.frame(tibble(d = paste(1:n))) relations = data.frame(tibble( from = sample(data$d), to = lead(from, default=from[1]), )) data$name = c("new york", "chicago", "los angeles", "orlando", "houston", "seattle", "washington", "baltimore", "atlanta", "las vegas", "oakland", "phoenix", "kansas"
6 2023-05-22
编程技术问答社区
在R中绘制自定义PDF
给定: 考虑密度函数 $ \ phi $ 在 $ \ Mathbb {r} $ for $ a \ in \ Mathbb {r} $ and $ b \ in \ Mathbb {r} _+^\ star $ $ \ forall x \ in \ mathbb {r} $ , $$ \ phi(x; a,b)= \ frac {1} {\ sqrt {2 \ pi b^2}} e^{ - \ frac {1} {2} {2} {2} \ left(\ frac {x-a} {x-a} {b} {b} \ right)^2}. $$ 现在考虑所谓的BART SIMPSON概率密度函数 $ f $ 由 \ begin {eqnarray} \ label {eq:bart:1d:1} f(x)= \ frac {1} {2} \ phi(x; 0,1) + \ frac {1} {10} {10} \ sum_ {j = 0}^4 {\ phi(x;(j/2) )-1,1/10)}
0 2023-05-22
编程技术问答社区
我怎样才能以编程方式生成带有标签的维恩图图像?
我正在尝试为PDF报告生成Venn图,并在不同区域的顶部进行文字. 我们正在使用HTMLDOC生成PDF,这排除了背景图像之上的文本. 我们将Google Charts API用于其他图像,但是它们的Venn图不支持图表顶部的文本(据我所知). 最简单的路径是使用第三方库在服务器上生成Venn的图像的某种方法,然后将图像链接到文档中,我只是不知道任何支持我们用例的软件包. 任何链接/指针都将不胜感激. 解决方案 这是一些示例代码.这似乎是一个体面的教程: http://paulbourke.net/dataformats/dataformats/postscript/postscript/ 如果您在Linux上,则可以使用gv命令查看它.也有各种公用事业将其转换为PDF. Linux上的PS2PDF,我认为Windows上的Acrobat Distiller. %!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0
0 2023-05-22
编程技术问答社区
与Seaborn绘制时,如何为色相参数指定多个变量?
使用 seaborn ,是否有一种方法可以包含多个变量(列)的 hue 参数?提出这个问题的另一种方法是,在将数据绘制到单个x,y轴图之前,我该如何按多个变量进行分组? 我想做下面的事情.但是目前,我无法为 hue 参数指定两个变量. sns.relplot(x='#', y='Attack', hue=['Legendary', 'Stage'], data=df) 例如,假设我有一个pandas dataframe,如以下类似于包含a 宠物小精灵数据库通过这个教程. 我想在x轴上绘制 pokedex#和y轴攻击.但是,我想通过阶段和传奇将数据分组.使用 matplotlib ,我编写了一个自定义函数,该功能将 ['Legendary','stage']] 分组,然后通过每个组迭代以进行绘图(请参见下面的结果).尽管我的自定义功能按预期工作,但我希望Seaborn可以简单地实现这一点.我猜想,必须有其他人试图在使用Seaborn的单个剧情中可视化3个以上的变量?
0 2023-05-18
编程技术问答社区
Geopandas和bokeh从数据中提取xs和ys
我正在尝试使用地理上的Geodata读取Geodata,并使用Geopandas读取在CSV文件中,并为大学目的创建欧洲地图.我从Geopandas DB中提取几何值,并将其添加到我的DF中,尽管我显然需要使用Geojson文件. 我花了一天的时间浏览了几个教程和示例,尽管我没有设法链接它. 如果有人能提供帮助,将不胜感激. 目的是添加带有绿色的字形,以表明每个国家/地区根据平均列在欧洲的表现如何. world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres')) europe = (world.loc[world['continent'] == 'Europe']) europe.head() geo_source = GeoJSONDataSource(geojson=europe.to_json()) palette = ['#b9ef96', '#9ae968', '#7be23a', '#6cdf2
2 2023-05-18
编程技术问答社区
显示X轴的函数的xticks,而不是直接显示数据本身。日期的例子 (pandas, matplotlib)
在与Seaborn合作时,我试图将X-Ticks设置为与我的数据不同.我会稍后举一个具体的例子,但我也概括了我的问题.如果对一个总体问题有一个规范的答案,那将是很棒的. 是否可以将X-Ticks设置为我用于绘制的数据的函数?当我无法直接绘制数据的功能时. 假设我有一种接收x并返回f(x)的方法.是否可以通过x绘制数据,但是在x轴上显示f(x)?就像返回每个数字的字符串一样,我想显示字符串. 如果我有一个数据框,我将其绘制为x轴的列名称" col_x",而我不想代替x-ticks显示" col_f_x"的数据.我可以以某种方式在两个列之间进行"匹配"? 问题当然相似,而第一个假设我有一个函数,第二个直接询问数据框中的两个列. 现在进行具体示例.我最初的目标是在日期使用seaborn.displot.不幸的是,看来它不支持与日期合作.我决定按几天的差异进行一些旁路和绘图数据.我解释了我在这里所做的事情:系列中的海洋摊位? ,这是我问题的起源. 让我们使用此简单
4 2023-05-18
编程技术问答社区
海生Distplot没有反应
我正在尝试使用pandas和seaborn绘制简单Distplot以了解数据集的密度. 输入 #Car,45 #photo,4 #movie,6 #life,1 #Horse,14 #Pets,20 #run,67 #picture,89 数据集具有以上10K行,no headers,我正在尝试使用col[1] 代码 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns df = pd.read_csv('keyword.csv', delimiter=',', header=None, usecols=[1]) #print df sns.distplot(df) plt.show() 没有错误,因为我可以打印输入列,但是distplot正在花费很长时间来计算和冻结我的屏幕.任何加速过程的建议. edit1:,如
0 2023-05-18
编程技术问答社区
Python。将dict的dict可视化的最佳方法
我想可视化dicts的以下dict players_info = {'Afghanistan': {'Asghar Stanikzai': 809.0, 'Mohammad Nabi': 851.0, 'Mohammad Shahzad': 1713.0, 'Najibullah Zadran': 643.0, 'Samiullah Shenwari': 774.0}, 'Australia': {'AJ Finch': 1082.0, 'CL White': 988.0, 'DA Warner': 1691.0, 'GJ Maxwell': 822.0, 'SR Watson': 1465.0}, 'England': {'AD Hales': 1340.0, 'EJG Morgan': 1577.0, 'JC Buttler': 985.0, 'KP Pietersen': 1176.0, 'LJ Wright': 759.0
10 2023-05-18
编程技术问答社区
在pandas+matplotlib中用colorbar绘制时间序列图
我正在尝试在此图表下方绘制一个配色栏,其中颜色取决于每个时间序列何时开始: 生成创建图的代码是: import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns sns.set() def partial_cum_returns(start, cum_returns): return cum_returns.loc[start:].div(cum_returns.loc[start]) index = pd.DatetimeIndex(pd.date_range('20170101', '20190101', freq='W')) np.random.seed(5) returns = pd.Series(np.exp(np.random.normal(loc=0, scale=0.05, size=len(index))), index=
0 2023-05-17
编程技术问答社区
用不同的数组长度绘制来自pandas数据框的三维光谱数据
是否有可能获得此图 从熊猫数据框架中,以一种类似的方式与我只是做2D图(df.plot())的类似方式? 更精确: 我有从CSV文件中读取到pandas DataFrames的数据,并具有以下结构: 1st level header A B C D E F 2nd level header 2.0 1.0 0.2 0.4 0.6 0.8 Index 126.4348 -467048 -814795 301388 298430 -187654 -1903170 126.4310 -468329 -810060 304366 305343 -192035 -1
2 2023-05-17
编程技术问答社区
隐藏海波纹柱状图前的文字
我试图使用Seaborn 打印一个barplot plt.figure(figsize=(16, 6)) g = sns.barplot(x = 'A', y = 'B', data = df) g.set_xticklabels(g.get_xticklabels(), rotation=90) 但是,在实际情节之前,有两个单元格被带有类似的文字打印 out[3]: out[3]: [Text(0, 0, 'valueA'), Text(0, 0, 'valueB'), .... Text(0, 0, 'valueZ')] 在实际的barplot之前如何抑制文本 解决方案 文本的设置正在返回文本OBJ.因此;如果将它们带入变量,则不会出现输出. var = g.set_xtickl
2 2023-05-17
编程技术问答社区
使用seaborn绘制系列图
category = df.category_name_column.value_counts() i具有上述元素,该系列返回值: CategoryA,100 CategoryB,200 我试图在x-轴上绘制前5个类别名称和y轴的值 head = (category.head(5)) sns.barplot(x = head ,y=df.category_name_column.value_counts(), data=df) 它不会在X轴中打印类别的"名称",而是计数.如何在x中打印前5个名称,y? 中的值 解决方案 您可以在sns.barplot中分别将系列'index&values分别传递给x&y.随之而来的绘图代码变为: sns.barplot(head.index, head.values) 我试图在x 中绘制前5个类别名称 呼叫category.head(5)将返回系列category的前五个值,这可能与 top 5 的次数不
10 2023-05-17
编程技术问答社区
如何用Altair显示百分比的直方图而不是计数的直方图
如何获得总数百分比的直方图,而不是使用Altair和Pandas的计数直方图? 我目前有这个: 我这样做的是: d = {'age': ['12', '32', '43', '54', '32', '32', '12']} dfTest = pd.DataFrame(data=d) alt.Chart(dfTest).mark_bar().encode( alt.X("age:Q", bin=True), y='count()', ) 解决方案 您可以使用加入聚合变换然后是计算转换: import pandas as pd import altair as alt source = pd.DataFrame({'age': ['12', '32', '43', '54', '32', '32', '12']}) alt.Chart(source).transform_joinaggregate( total='count(*)'
4 2023-05-17
编程技术问答社区