标签: visualization

如何选择清晰的颜色在 d3js 图表中的条形图上绘制文本?

我有一个使用 d3 完成的条形图,我想在条形图上添加文本。如何为文本选择最清晰的颜色,例如黑色条为白色,其他条为黑色?我无法选择条形颜色,但当我附加文本时,我确实知道每个条形的颜色。

PS:可能的重复是通用的 Javascript 解决方案,使用 d3 更容易。

javascript visualization colors d3.js

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

d3.js:axisBottom 出现在顶部而不是

我正在尝试将 X 轴添加到我的 D3 (v5) 生成图的底部,如下所示。然而,X 轴出现在顶部,即使我调用axisBottom(). 我在某处犯了错误吗?

results = {
  x: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
  y: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100],
  y1: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100],
}

const W = 1000,
      H = 620,
      margin = {
        top: 20,
        right: 80,
        bottom: 30,
        left: 50,
      };

const width = W - margin.left - margin.right,
      height = H - margin.top …
Run Code Online (Sandbox Code Playgroud)

javascript visualization data-visualization axis-labels d3.js

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

在 Geopandas 中编辑颜色条(图例)?

在我正在创建的 geopandas 世界 choropleth 中,我想用颜色条编辑多项内容。即大小(使其与地图本身大致匹配)、文本大小(当前显示太小),我还想为其添加标签。从阅读中似乎没有简单的方法可以在 geopandas 中明确地做到这一点,所以我想知道是否有人可以提供任何解决方法?任何帮助将不胜感激。

这是我目前正在使用的一段代码(在某些情况下,中间部分只是将列表与按国家/地区划分的数字合并到框架中,我将其用作着色的基础)

fig, ax = plt.subplots(figsize=(40,29.171))
world = geopandas.read_file(geopandas.datasets.get_path('naturalearth_lowres'))

world=pd.DataFrame(world)
world['LEADS']=0.1
world = world.set_index('name')
world['name']=world.index
for x, y in zip(Countries, country_counts):
    world.loc[x, 'LEADS'] = y
world=geopandas.GeoDataFrame(world)

world = world[(world.index != "Antarctica")]
ax.set_axis_off()
#ax.legend(title="Leads")
world.plot(ax=ax, column='LEADS', cmap='Oranges', legend=True,linewidth = 1.5)
plt.tight_layout()

plt.savefig('plot_image.png', bbox_inches='tight', transparent=True)
Run Code Online (Sandbox Code Playgroud)

这里的理想解决方案是保持图例选项具有的颜色,指定大小和文本大小并在栏顶部启用标签。不幸的是,我正在努力弄清楚这些是如何完成的。

python visualization pandas geopandas choropleth

3
推荐指数
2
解决办法
4427
查看次数

如何向此 Vega 可视化添加图例

我想弄清楚如何在此处为示例 vega 可视化添加图例。任何有关如何执行此操作的示例将不胜感激。最好是交互式的,并在可视化上突出显示或显示数据,但即使只是一个简单的图例也会有很大的改进。

谢谢

visualization vega

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

更改 seaborn boxplot 线彩虹颜色

我在网上找到了这个漂亮的图表(显然是用 plotly 制作的),并想用 seaborn 重新创建它。 在此处输入图片说明

到目前为止,这是我的代码:

import pandas as pd
import seaborn as sns

data = ...

flierprops = dict(marker='o', markersize=3)
sns.boxplot(x="label", y="mean",palette="husl", data=data,saturation=1,flierprops=flierprops)
Run Code Online (Sandbox Code Playgroud)

这是迄今为止的结果:

在此处输入图片说明

我已经很高兴了,但我想调整线条和异常值颜色以匹配husl调色板。我怎样才能做到这一点?(以及附加:我将如何更改线宽?)

python visualization seaborn

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

如何仅注释seaborn热图的对角线元素?

我正在使用 Seaborn 热图来绘制大型混淆矩阵的输出。由于对角线元素代表正确预测,因此它们更重要的是显示数量/正确率。正如问题所暗示的那样,如何仅注释热图中的对角线条目?

我已经咨询过这个网站https://seaborn.pydata.org/examples/many_pairwise_correlations.html,但它对如何只注释对角线条目没有帮助。希望有人可以帮忙。先感谢您!

python visualization seaborn

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

如何在 Keras/TensorFlow 中可视化 RNN/LSTM 权重?

我遇到过研究出版物和问答讨论检查 RNN 权重的必要性;一些相关的答案是在正确的方向,建议get_weights()- 但我如何真正有意义地可视化权重?也就是说,LSTM 和 GRU 都有,并且所有RNN 都有用作独立特征提取器的通道- 那么我如何(1)获取每个门的权重,以及(2)以信息丰富的方式绘制它们?

python visualization keras tensorflow recurrent-neural-network

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

来自gensim的pyLDAvis可视化未在google colab中显示结果

import pyLDAvis.gensim
# Visualize the topics
pyLDAvis.enable_notebook()
vis = pyLDAvis.gensim.prepare(lda_model, corpus, id2word)
vis
Run Code Online (Sandbox Code Playgroud)

上面的代码在 google colab 中显示了 LDA 模型的可视化,但在重新打开笔记本后它停止显示。我什至试过 pyLDAvis.display(vis, template_type='notebook') 还是不行

当我设置

pyLDAvis.enable_notebook(local=True)

在此处输入图像描述 它确实显示结果但不显示标签.. 任何帮助将不胜感激!

visualization lda gensim pyldavis

3
推荐指数
2
解决办法
2668
查看次数

如何在R中可视化覆盖圆形图的集群?

我有一个使用名为 Revigo 的网站制作的图,该网站提供了一个 R 脚本(包括在下面)来创建这样的图:

在此处输入图片说明

我想看看是否可以在同一图中的这些点之上执行和可视化聚类?由于该图看起来像一个大圆圈,因此我试图查看其中是否有可以突出显示的较小分组。我有生物学背景,所以我不知道从哪里开始尝试在同一个图中获得这种可视化。我已经探索过使用,hclust()但我不知道将集群显示在此图表顶部的步骤。

给出上图的代码和数据是:

library( ggplot2 );
library( scales );

revigo.names <- c("term_ID","description","frequency_%","plot_X","plot_Y","plot_size","log10_p_value","uniqueness","dispensability");
revigo.data <- rbind(c("GO:0002376","immune system process",16.463,-0.302,-3.807, 3.455,-8.3307,0.995,0.000),
c("GO:0006928","movement of cell or subcellular component",10.987, 1.052, 1.113, 3.280,-8.8153,0.965,0.000),
c("GO:0007610","behavior", 3.254,-1.620, 0.960, 2.752,-4.0048,0.994,0.000),
c("GO:0008150","biological_process",100.000,-6.029,-0.499, 4.239,-8.7447,1.000,0.000),
c("GO:0009987","cellular process",90.329,-5.288, 0.130, 4.195,-10.0701,0.999,0.000),
c("GO:0010243","response to organonitrogen compound", 4.697, 6.870,-2.756, 2.911,-12.7100,0.865,0.000),
c("GO:0023052","signaling",36.613, 2.976,-6.718, 3.803,-7.1931,0.996,0.000),
c("GO:0032501","multicellular organismal process",41.143, 3.761,-0.715, 3.853,-17.2741,0.997,0.000),
c("GO:0032502","developmental process",33.982,-2.865,-0.660, 3.770,-14.4202,0.996,0.000),
c("GO:0034762","regulation of transmembrane transport", 2.452,-3.982, 3.261, 2.629,-13.4123,0.788,0.000),
c("GO:0040007","growth", 5.447, 0.651,-0.889, 2.975,-4.2140,0.995,0.000),
c("GO:0040011","locomotion", 9.452, 2.305,-0.865, 3.215,-8.1068,0.995,0.000),
c("GO:0050896","response to stimulus",49.302, 3.556,-5.122, …
Run Code Online (Sandbox Code Playgroud)

visualization r hierarchical-clustering ggplot2

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

我将如何像 Altair 这样并排创建条形图?

我想创造的形象

我得到了图表的左侧(前三分之一),并尝试创建一个 'bars2' 和 'text2' 字段,但这不起作用并将其添加到原始的 ranked_movies 字段中,但这很混乱。有没有办法移动和压缩并添加一整套其他条形图?

tuples = list(zip([names[ep] for ep in episodes],topthird,middlethird))
binranking_per_df = pd.DataFrame(tuples, columns = ['Name', 'Top Third','Middle Third'])
#ranking_per_df


bars = alt.Chart(binranking_per_df).mark_bar(size=20).encode(
    x=alt.X(
        'Top Third',
        axis=None),
    y=alt.Y(
        'Name:N',
         axis=alt.Axis(tickCount=5, title=''),
         sort=names_l
    )
)

bars2 = alt.Chart(binranking_per_df).mark_bar(size=20).encode(
    x=alt.X(
        'Middle Third',
        axis=None),
    y=alt.Y(
        'Name:N',
         axis=alt.Axis(tickCount=5, title=''),
         sort=names_l
    )
)

text = bars.mark_text(
    align='left',
    baseline='middle',
    dx=3  
).encode(
    text=alt.Text('Top Third:Q',format='.0%')
)

text2 = bars.mark_text(
    align='left',
    baseline='middle',
    dx=3  
).encode(
    text=alt.Text('Middle Third:Q',format='.0%')
)

ranked_movies = (text + bars).configure_mark(
    color='#008fd5'
).configure_view( …
Run Code Online (Sandbox Code Playgroud)

python visualization altair

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