标签: bar-chart

如何在 Seaborn 图中设置色调顺序

我有一个 Pandas 数据集,名为titanic我正在绘制条形图,如 Seaborn 官方文档中所述,使用以下代码:

import seaborn as sns

titanic = sns.load_dataset("titanic")
sns.catplot(x="sex", y="survived", hue="class", kind="bar", data=titanic)
Run Code Online (Sandbox Code Playgroud)

这会产生以下图:

按类别划分的条形图

如您所见,色调由 表示class。如何手动选择色调顺序以便反转当前色调顺序?

python bar-chart pandas hue seaborn

24
推荐指数
1
解决办法
5万
查看次数

使用matplotlib堆积条形图

我使用matplotlib生成条形图,看起来堆积条形图有一个错误.每个垂直堆栈的总和应为100.但是,对于X-AXIS刻度65,70,75和80,我们得到完全任意的结果,这没有任何意义.我不明白是什么问题.请在下面找到MWE.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib
header = ['a','b','c','d']
dataset= [('60.0', '65.0', '70.0', '75.0', '80.0', '85.0', '90.0', '95.0', '100.0', '105.0', '110.0', '115.0', '120.0', '125.0', '130.0', '135.0', '140.0', '145.0', '150.0', '155.0', '160.0', '165.0', '170.0', '175.0', '180.0', '185.0', '190.0', '195.0', '200.0'), (0.0, 25.0, 48.93617021276596, 83.01886792452831, 66.66666666666666, 66.66666666666666, 70.96774193548387, 84.61538461538461, 93.33333333333333, 85.0, 92.85714285714286, 93.75, 95.0, 100.0, 100.0, 100.0, 100.0, 80.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0), (0.0, 50.0, 36.17021276595745, 11.320754716981133, 26.666666666666668, 33.33333333333333, 29.03225806451613, …
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib bar-chart

23
推荐指数
4
解决办法
5万
查看次数

R:如何制作带有与条形平行(水平)标签的条形图

在条形图中,是否可以使标签与条形图平行?

假设我们有一个名为"data"的数据框.

              Page   PV UniquePgv
1 /photos/upcoming 5295      2733
2                / 4821      2996
3          /search 1201       605
4       /my_photos  827       340
5   /photos/circle  732       482
Run Code Online (Sandbox Code Playgroud)

我想用Page列作为标签来制作PV的条形图.

names <-data$Page
barplot(data$PV,main="Page Views", horiz=TRUE,names.arg=names)
Run Code Online (Sandbox Code Playgroud)

哪个产生:

在此输入图像描述

每个栏的名称是垂直的,而栏是水平的.

如何使标签水平显示并与条形平行?如果不可能,我愿意接受有关绘制此信息的其他方法的建议.

label r bar-chart

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

ggplot2:使用geom_bar绘制平均值

我有以下数据框:

test2 <- data.frame(groups = c(rep("group1",4), rep("group2",4)), 
    X2 = c(rnorm(4), rnorm(4)) , 
    label = c(rep(1,2),rep(2,2),rep(1,2),rep(2,2)))
Run Code Online (Sandbox Code Playgroud)

我正在使用以下方法绘制每组每个标签的条形图:

ggplot(test2, aes(label, X2, fill=as.factor(groups))) + 
    geom_bar(position="dodge", stat="identity")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但是,我似乎无法找到一个stat="mean"所以我可以在每个条形图而不是身份上绘制手段.

谢谢你的帮助.

visualization r bar-chart ggplot2

22
推荐指数
2
解决办法
5万
查看次数

如何将堆积百分比条形图标签居中

我试图绘制好的stacked percent barchart使用ggplot2.我已经阅读了一些材料,几乎可以设法绘制,我想要什么.另外,我附上材料,它可能在一个地方有用:

如何在不创建摘要数据框的情况下在ggplot2中标记堆积条形图?

创建堆叠的条形图,其中每个堆栈按比例缩放为100%

R堆积百分比条形图,包含二元因子和标签的百分比(使用ggplot)

我的问题是我不能放在labels我想要的地方- 在酒吧中间.在此输入图像描述

您可以在上面的图片中看到问题 - 标签看起来很糟糕,并且彼此重叠.

我现在正在寻找的是:

  1. 如何在酒吧(区域)的中间放置标签

  2. 如何绘制不是所有标签,但例如哪些标签超过10%?

  3. 如何解决重叠问题?

对于Q 1.@MikeWise建议可能的解决方案.但是,我仍然无法处理这个问题.

另外,我附上了可重复的例子,我是如何绘制这个grahp的.

library('plyr')
library('ggplot2')
library('scales')
set.seed(1992)
n=68

Category <- sample(c("Black", "Red", "Blue", "Cyna", "Purple"), n, replace = TRUE, prob = NULL)
Brand <- sample("Brand", n, replace = TRUE, prob = NULL)
Brand <- paste0(Brand, sample(1:5, n, replace = TRUE, prob = NULL))
USD <- abs(rnorm(n))*100

df <- data.frame(Category, Brand, USD)

# Calculate the percentages …
Run Code Online (Sandbox Code Playgroud)

r labels bar-chart ggplot2

22
推荐指数
1
解决办法
1万
查看次数

条形图中恼人的白色空间(matplotlib,Python)

这可能是一个微不足道的问题,但我试图用matplotlib和x轴上的旋转文本绘制条形图.我正在使用的代码如下所示:

fig = plt.figure()

x_labels_list = []

for i in range(0, pow(2, N)):
    x_labels_list.append(str(f(i)))  # The function f() converts i to a binary string

ax = plt.subplot(111)
width = 1.0
bins = map(lambda x: x-width, range(1,pow(2,N)+1))
ax.bar(bins, my_data, width=width)
ax.set_xticks(map(lambda x: x-width/2, range(1,pow(2,N)+1)))
ax.set_xticklabels(x_labels_list, rotation=90, rotation_mode="anchor", ha="right")
Run Code Online (Sandbox Code Playgroud)

它工作得很好,但是我在x轴的右边获得了一个恼人的空白区域,如下图中的红色椭圆所示:

在此输入图像描述

你知道我怎么能把它删除吗?提前致谢!

python matplotlib bar-chart

21
推荐指数
1
解决办法
1万
查看次数

在gnuplot中的集群条形图

我有一个简单的结果表,我想在gnuplot中绘制为聚类直方图.数据集具有网页的内容类型类别以及两列中的相应百分比份额.我有两个浏览器.例如,

For IE,
    Content      Share
    Video         30%
    Audio         10%
    Flash         25%
    HTML          20%
    Javascript    15%

   For Chrome,
    Content      Share
    Video         20%
    Audio         5%
    Flash         35%
    HTML          30%
    Javascript    10%
Run Code Online (Sandbox Code Playgroud)

现在我想将这两个数据与x轴中的内容类型以及带有图例的y轴上的相应共享一起绘制.我该怎么做呢?

plot gnuplot bar-chart

20
推荐指数
1
解决办法
2万
查看次数

D3.js过渡

我正在尝试使用d3.js创建动画条形图.我希望条形图像这个例子http://nvd3.com/ghpages/multiBar.html一个一个地出现.我能够创建一个类似的行为但是动作从条形的高度开始将条形建立在x轴上,但是我希望动画从x轴开始并像示例那样转到条形的高度.

很多我的代码的简化版本:http: //jsfiddle.net/gorkem/ECRMd/

任何帮助将非常感激

transitions bar-chart d3.js

20
推荐指数
1
解决办法
2万
查看次数

在代码隐藏中的DataTemplate中找到一个WPF元素

我有一个数据模板

<Window.Resources>
         <DataTemplate x:Key="BarChartItemsTemplate">
         <Border Width="385" Height="50">
            <Grid>
               <Rectangle Name="rectangleBarChart" Fill="MediumOrchid" StrokeThickness="2" Height="40" Width="{Binding}" HorizontalAlignment="Right" VerticalAlignment="Bottom">
                  <Rectangle.LayoutTransform>
                     <ScaleTransform ScaleX="4"/>
                  </Rectangle.LayoutTransform>
               </Rectangle>
               <TextBlock Margin="14" FontWeight="Bold" HorizontalAlignment="Right" VerticalAlignment="Center" Text="{Binding}">
                  <TextBlock.LayoutTransform>
                     <TransformGroup>
                        <RotateTransform Angle="90"/>
                        <ScaleTransform ScaleX="-1" ScaleY="1"/>
                     </TransformGroup>
                  </TextBlock.LayoutTransform>
               </TextBlock>
            </Grid>
         </Border>
      </DataTemplate>
  </Window.Resources>
Run Code Online (Sandbox Code Playgroud)

我在表格上有一个按钮.我需要从dataTemplate更改矩形(scaleTransform).我如何访问上述按钮的Button_Click事件中的'rectangleBarChart'元素?

c# wpf xaml datatemplate bar-chart

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

堆积条形图的位置图例

我正在尝试创建一个堆积条形图,但我无法定位图例,以便它不会与任何条形图重叠.我试过调整边距,设置xlim,使用单独的legend语句并在此搜索,都没有成功.实际上,示例数据集的代码来自StackOverflow.我使用基础R并且更喜欢基础R解决方案.谢谢你的任何建议.

setwd('c:/users/mmiller21/simple R programs/')

jpeg(filename = "barplot.jpeg")

set.seed(1234)
x <- replicate(8, round(10 * rexp(2000, 10)))
y <- apply(x, 2, function(column) table(factor(column, levels = 0:9)))
colnames(y) <- paste('A', seq(1,ncol(y),1), sep='')
rownames(y) <- paste('R', seq(1,nrow(y),1), sep='')
y

#      A1  A2  A3  A4  A5  A6  A7  A8
# R1  769 800 790 806 792 787 834 801
# R2  779 733 793 757 786 744 731 776
# R3  284 297 278 272 263 301 280 275
# R4 …
Run Code Online (Sandbox Code Playgroud)

plot r bar-chart

20
推荐指数
3
解决办法
5万
查看次数