标签: visualization

Scala,Charts和Google Visualization API

那些人都知道Scala Library for Graphs/Charts或Google Visualization API的实现.

干杯

charts visualization scala graph

4
推荐指数
1
解决办法
1842
查看次数

使用Protovis的交互式区域图表

这对Protovis新人来说是一个相当艰巨的项目,但也许你可以帮助我把它分成易消化的块?

我想要构建的是一个"交互式区域图表",如下所示: http://i.stack.imgur.com/7bs9W.png

首先,它是数据......我在Excel中有各省的数据:

Province   Year  10  100  1000  10000 
A          1970  2   4    6     3 
A          1971  3   6    8     5 
B          1970  6   9    12    6 
B          1971  4   8    11    8 
....       ...   .   .    .     .

对于每个省和年,我希望能够绘制面积图:

vis.add(pv.Area) 
    .data(data.ProvinceA[1970]) 
    .bottom(1) 
    .interpolate("basis") 
    .left(function(d) x(d.x)) 
    .height(function(d) y(d.y)) 
    .fillStyle("rgb(21,173,210)") 
    .anchor("top").add(pv.Line) 
    .lineWidth(3); 
Run Code Online (Sandbox Code Playgroud)

然后我想添加两种类型的交互:

  1. 省的选择
  2. 时间滑块

选择复选框和时间滑块一起确定在任何给定时间可见的区域.例如,如果选择了省A并且年份是1984年,则仅显示该区域.如果现在拖动时间滑块,则现在会显示省A的相应年份.如果选中了另一个省,则会覆盖这些区域,并在时间滑块移动时重新绘制这两个区域.

Protovis问题:

  1. 如何格式化此应用程序的数据(省,年,年,年)?
  2. 如何实现复选框与区域的绑定?
  3. 如何实现时间滑块?在Protovis中,或者像是一个带有侦听器的外部组件,触发器重新渲染图形?

javascript json visualization protovis

4
推荐指数
1
解决办法
1267
查看次数

如何为ggplot中的每个点使用不同的形状

我正在绘制一个4维数据集.在x轴和y轴之外,我想用不同宽度和高度的矩形表示第3和第4维度.我可以这样做ggplot吗?谢谢.

在此输入图像描述

plot visualization r ggplot2

4
推荐指数
1
解决办法
695
查看次数

使用igraph和R进行图形可视化

我试图使用igraph包在R中可视化图形.我希望可视化边缘大小在2000到70,000之间的图形.情节看起来像这样:

这不是一个很好的情节,因为你看不到任何东西.我已经弄明白了如何带走标签,但由于顶点太大,你仍然看不到任何东西.

  1. 我可以删除顶点,只看边缘吗?

例如,这是相同的情节,但我在完成之前拍了照片.似乎R只在完成之前绘制边缘:

在此输入图像描述

visualization r igraph graph-visualization

4
推荐指数
1
解决办法
5034
查看次数

使用R将多个数据系列绘制到单个袋图中

让我们考虑包含在R中的aplpack库中的bagplot示例 .Backplot是一个boxplot的双变量概括,因此可以深入了解两个轴中数据点的分布.

包袋示例: 汽车数据袋图

示例代码:

  # example of Rousseeuw et al., see R-package rpart
  cardata <- structure(as.integer( c(2560,2345,1845,2260,2440,
   2285, 2275, 2350, 2295, 1900, 2390, 2075, 2330, 3320, 2885,
   3310, 2695, 2170, 2710, 2775, 2840, 2485, 2670, 2640, 2655,
   3065, 2750, 2920, 2780, 2745, 3110, 2920, 2645, 2575, 2935,
   2920, 2985, 3265, 2880, 2975, 3450, 3145, 3190, 3610, 2885,
   3480, 3200, 2765, 3220, 3480, 3325, 3855, 3850, 3195, 3735,
   3665, 3735, 3415, 3185, 3690, 97, 114, 81, 91, 113, 97, 97, …
Run Code Online (Sandbox Code Playgroud)

visualization r boxplot bagplot

4
推荐指数
1
解决办法
1380
查看次数

如何使用Plots.jl根据z中的值为散点图着色(x,y)?

使用Julia中的Plots.jl包,我可以使用各种后端基于两个向量绘制散点图,x并且y

k = 100
x = rand(k)
y = rand(k)
scatter(x, y)
Run Code Online (Sandbox Code Playgroud)

我找不到有关如何根据某些长度k向量给它们着色的信息z。你是怎样做的?

plot visualization julia plots.jl

4
推荐指数
1
解决办法
1138
查看次数

替代维恩图

是否有可视化格式显示数据中类别的重叠比例,但比维恩图更精确?此外,维恩图通常用于显示2或3个类别,而不仅仅是令人困惑的类别.

堆积条,瀑布等可以显示每个类别的比例,但假设这些类别之间没有重叠.

那么对于重叠类别,显示其比例的最佳方式是什么,包括与另一类别重叠的比例?

visualization data-visualization

4
推荐指数
1
解决办法
8440
查看次数

散景散点图中的色点

我有以下简单的说法pandas.DataFrame:

df = pd.DataFrame(
    {
        "journey": ['ch1', 'ch2', 'ch2', 'ch1'],
        "cat": ['a', 'b', 'a', 'c'],
        "kpi1": [1,2,3,4],
        "kpi2": [4,3,2,1]
    }
)
Run Code Online (Sandbox Code Playgroud)

我的情节如下:

import bokeh.plotting as bpl
import bokeh.models as bmo
bpl.output_notebook()
source = bpl.ColumnDataSource.from_df(df)
hover = bmo.HoverTool(
    tooltips=[
        ("index", "@index"),
        ('journey', '@journey'),
        ("Cat", '@cat')
    ]
)
p = bpl.figure(tools=[hover])

p.scatter(
    'kpi1', 
    'kpi2', source=source)

bpl.show(p)  # open a browser
Run Code Online (Sandbox Code Playgroud)

我没有按照颜色对点进行颜色编码cat.最终,我希望第一和第三点在相同的颜色,第二和第四点在两种不同的颜色.

如何使用Bokeh实现这一目标?

python visualization bokeh

4
推荐指数
2
解决办法
8410
查看次数

在matplotlib图例中使用文本但不使用标记

我在我的图表中使用FontAwesome,每个数据点都是FontAwesome字体中的符号,显示为图标.因此,在图例中,我想使用文本(FontAwesome中的符号)来描述项目.

我使用的代码如下:

from matplotlib.patches import Patch
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

ax = plt.gca()
ax.axis([0, 3, 0, 3])
prop = fm.FontProperties(fname='FontAwesome.otf', size=18)
ax.text(x=0, y=0, s='\uf1c7', color='r', fontproperties=prop)
ax.text(x=2, y=0, s='\uf050', color='g', fontproperties=prop)

plt.legend(handles=[Patch(color='r', label='label1'), Patch(color='g', label='label2')])
Run Code Online (Sandbox Code Playgroud)

情节如下: 在此输入图像描述

所以我想要做的是将图例中的颜色条替换为与图中相同的图标.

我使用的句柄是补丁列表.但我发现在Patch中添加文本很难.我发现这里有一个很好的解决方案可以将图片添加到图例中:在matplotlib图例中插入图片

我已尝试在该答案中使用TextArea替换BboxImage,但它不起作用,TextArea不支持像axis.text这样的fontproperties.

那么有没有一种方法可以在图例中使用文字而不是标记?

python visualization matplotlib

4
推荐指数
1
解决办法
576
查看次数

ggplot2:如何更改图例的顺序

library(tidyverse)
library(ggplot2)
library(ggstance)
dat <- structure(list(Gender = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 
                                           1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("Female", "Male"
                                           ), class = "factor"), Status = c("Case", "Case", "Case", "Case", 
                                                                            "Control", "Control", "Control", "Control", "Case", "Case", "Case", 
                                                                            "Case", "Control", "Control", "Control", "Control"), Type = c("Age30", 
                                                                                                                                          "Age30", "Age30", "Age30", "Age30", "Age30", "Age30", "Age30", 
                                                                                                                                          "Age50", "Age50", "Age50", "Age50", "Age50", "Age50", "Age50", 
                                                                                                                                          "Age50"), Risk = c(21.59862, 3.27479, 1.10073, 1.70754, 8.85253, 
                                                                                                                                                             1.66318, 0.23228, 0.44844, 18.01182, 3.80135, 1.40662, …
Run Code Online (Sandbox Code Playgroud)

visualization r ggplot2

4
推荐指数
1
解决办法
3618
查看次数