标签: bar-chart

Python/pandas:带有非数字类别的条形图

我有下表:

song_ids                track_id    play_count_sum  user_id_count   genre_id
SOAAAMT12AB018C9C4  TRYIOYF12903CD4E73    1                1    Pop_Rock
SOAAAXN12A8C13A70C  TRXWDIG128F4274BF1    5                1    Latin
SOAABLP12A6D4F8861  TRXOSZE128F148A158    1                1    Pop_Rock
SOAABRT12A6D4F7940  TRUGBDI128F14548CD   13                2    International
SOAABVA12AC3DF673F  TRXVIGQ12903CE7F6E    4                3    Pop_Rock
Run Code Online (Sandbox Code Playgroud)

我想通过genre_id创建条形图,但是失败了,因为它不是数值.

import matplotlib.pyplot as plt
import numpy as np

f=df.plot(df[['genre_id']].grouby(),df[['play_count_sum']].sum())
Run Code Online (Sandbox Code Playgroud)

python matplotlib bar-chart pandas

0
推荐指数
1
解决办法
1891
查看次数

ArrayList<String> 无法转换为 IBarDataSet

我在使用 BarData 时遇到问题。我的代码在以下位置显示错误:

BarData Data = new BarData(Date,depenses);
Run Code Online (Sandbox Code Playgroud)

我只想在每个条形下显示日期。

我的代码是..

public class statistique extends AppCompatActivity {

BarChart barChart;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_statistique);


    barChart = (BarChart)findViewById(R.id.stats_chart);

    ArrayList<BarEntry> entries = new ArrayList<>();
    entries.add(new BarEntry(4f, 0));
    entries.add(new BarEntry(8f, 1));
    entries.add(new BarEntry(6f, 2));
    entries.add(new BarEntry(12f, 3));
    entries.add(new BarEntry(18f, 4));
    entries.add(new BarEntry(9f, 5));


    BarDataSet depenses = new BarDataSet(entries, "depenses");

    ArrayList<String> Date = new ArrayList<>();
    Date.add("2/7/2016");
    Date.add("3/7/2016");
    Date.add("5/7/2016");
    Date.add("6/7/2016");
    Date.add("23/7/2016");
    Date.add("30/7/2016");


    BarData Data = new BarData(Date,depenses);
    barChart.setData(Data);

    barChart.setTouchEnabled(true);
    barChart.setDragEnabled(true);
    barChart.setScaleEnabled(true);
    barChart.animateXY(3000, 3000); …
Run Code Online (Sandbox Code Playgroud)

android bar-chart android-studio mpandroidchart

0
推荐指数
1
解决办法
5424
查看次数

如何使用ggplot修改条形图中的图例标题

想象一下,你有一个像这样的简单数据集:

   ive
      region   Edad
  1  Española   23
  2  Española   37
  3  Española   40
  4  Española   21
  5  Africana   29
  6  Española   42
  7   Europea   29
  8  Española   25
  9  Española   32
  10 Española   20
Run Code Online (Sandbox Code Playgroud)

我有兴趣为region按颜色分类的变量执行条形图。所以我创建了以下代码:

 g1 <- ggplot(ive, aes(x=reorder(ive$region, -table(ive$region)[ive$region])))
 g1 + geom_bar(aes(fill=ive$region)) + geom_text(stat='count',aes(label=..count..),vjust=-0.7) + xlab("")
Run Code Online (Sandbox Code Playgroud)

但是图例显示ive$region,我希望它显示自定义标题。

我几乎可以肯定这是一个愚蠢的问题,但我一直在尝试解决它 2 天,但我没有找到解决方法。

谢谢你,阿尔瓦罗

text r legend bar-chart ggplot2

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

堆叠条形图,带有百分比值的标签条

我想将表格绘制为堆积的条形图,并用百分比标记条形。这是一个例子:

data <- matrix(c(34, 66, 22, 78), ncol = 2)
data <- as.table(data)
colnames(data) <- c("shop1", "shop2")
rownames(data) <- c("prod1", "prod2")

library(reshape2)
data_m <- melt(data, varnames = c("Product", "Shop"), id.vars = "Product")

library(scales)
library(ggplot2)
ggplot(data_m, aes(x = Shop, y = value, fill = Product)) + 
geom_bar(position = "fill", stat = "identity") + 
scale_y_continuous(labels = percent_format()) +
labs(x = "", y = "")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我试图用添加标签

geom_text(data = data_m, aes(x = Shop, y = value, 
                         label = paste0((value/100) * 100,"%")), size=4)
Run Code Online (Sandbox Code Playgroud)

但这导致 在此处输入图片说明

编辑:随着JanLauGe的答案,我得到 …

r bar-chart ggplot2

0
推荐指数
1
解决办法
2900
查看次数

如何自动调整 d3.js 图形大小以包含轴

我在构建条形图时遇到了一些问题。我是第一次学习 d3.js,并且作为一个一直使用 PHP/MySQL 的人,我不需要学习 javascript。结果,我有点挣扎。

我的问题本质上更具概念性。假设在条形图中,Y 轴包含在 ag 元素中,而条形包含在另一个元素中,那么我如何确保我的轴根据所提供的数据采用动态宽度?

我设法生成了一个条形图,效果很好,但填充是固定数字(假设为 50px)。现在效果很好,因为我的数字从 0 到 50,所以一切都合适。如果我得到数万亿美元会怎样?轴的宽度会改变,但我的填充仍然是 50px,这意味着它会裁剪我的内容。

说到这里,“约定”是什么?有什么技巧吗?

谢谢

axis dynamic width bar-chart d3.js

0
推荐指数
1
解决办法
2023
查看次数

如何在 ggplot 中的堆叠条形图中放置标签,其中 y 轴是“计数”?

绘制 ggplot,其中 x 轴作为名称(分类),y 轴默认为计数

gnew = ggplot(data= got, aes(x= got$attacker_king, fill= got$attacker_outcome))+
    geom_bar() +
    geom_text(stat = "count", aes(label =..count..), vjust = -.5)+
    scale_y_continuous(limits = c(0,20)) # plotting the stacked ggplot #this works
Run Code Online (Sandbox Code Playgroud)

尝试根据填充的位置定位标签

got = ddply(got, .(got$attacker_king), 
    transform, pos = cumsum(..count..)- (0.5 *..count..)) # positioning labels shows error

#This shows error as "Error in eval(expr, envir, enclos) : object '..count..' not found"

Please help!
Run Code Online (Sandbox Code Playgroud)

这就是我对 ggplot 的看法

(位置不对,需要交换位置并居中) 在此输入图像描述

label position r bar-chart ggplot2

0
推荐指数
1
解决办法
2495
查看次数

想要使Highcharts条形图数据标签出现在图表的最右侧

我正在寻找所需的输出,如下所示:

数据标签位于最右侧

series.dataLabels.align:left/right`没有剪切它.它只会出现在每个栏的蓝色矩形之后而不是最右边,这不是我想要的.我也看了一下highcharts api,我无法找到完成工作的图表选项.提前致谢.

 My current chart options:
 var options = {
            chart: {
                renderTo: 'container',
                type: 'bar',
            },
            credits: {
                enabled: false
            },
            colors: ['#024a7a'],
            title:{
                text:null
            },
            plotOptions: {
                bar:    {
                animation: false
                },
                series: {
                    showInLegend: false,
                    states: {
                        hover:  {
                            enabled:false
                        }
                    }
                }
            },
            tooltip: { 
            enabled: false 
            },
            xAxis: [{
                categories: ['SAC 1', 'SAC 2', 'SAC 3'],
                lineWidth: 0,
                minorGridLineWidth: 0,
                lineColor: 'transparent',
                minorTickLength: 0,
                tickLength: 0
            }],
            yAxis: [{
                gridLineWidth: 0,
                labels: {
                    enabled: …
Run Code Online (Sandbox Code Playgroud)

bar-chart highcharts

0
推荐指数
1
解决办法
284
查看次数

seaborn barplot 中条形的升序

我有以下数据框

   Class    Age Percentage
0   2004    3   43.491170
1   2004    2   29.616607
2   2004    4   13.838925
3   2004    6   10.049712
4   2004    5   2.637445
5   2004    1   0.366142
6   2005    2   51.267369
7   2005    3   19.589268
8   2005    6   13.730432
9   2005    4   11.155305
10  2005    5   3.343524
11  2005    1   0.913590
12  2005    9   0.000511
Run Code Online (Sandbox Code Playgroud)

我想使用 seaborn 绘制条形图,其中 y 轴是“百分比”,x 轴是“类别”,并使用“年龄”列标记它们。我还想按降序排列条形,即从较大的条形到较小的条形。

为了做到这一点,我想到了以下几点:我将hue_order根据“百分比”变量的顺序更改参数。例如,如果我按降序对 'Percentage' 列进行排序Class == 2004,则hue_order = [3, 2, 4, 6, 5, 1]. …

python matplotlib bar-chart pandas seaborn

0
推荐指数
1
解决办法
6060
查看次数

如何在 ggplot2 中为 geom_text 更改千位分隔符

我使用 ggplot2 创建了一个条形图,并用它们描绘的值标记了条形图。由于这些值相当大,我想使用千位分隔符。但我想使用倒逗号而不是普通逗号(我已经找到了如何使用逗号分隔)。

我已经尝试以同样的方式来改变 scale_y_continuous 中的千位分隔符,但它没有用。

我还读到我应该使用:

df <- df %>%
  mutate(label.income = gsub("\\,","'", scales::comma(income)))
Run Code Online (Sandbox Code Playgroud)

但是后来我总是收到以下错误消息:“使用方法中的错误(“mutate_”):“mutate_”没有适用的方法应用于“函数”类的对象”

这是我正在使用的数据和代码:

set1 <- read.table(text = "group income
           group1 30500
           group2 29000
           group3 60500
           group4 18000", header=TRUE)

library(ggplot2)
ggplot(set1, aes(x=group, y=income))+
  theme_bw()+
  geom_bar(stat = 'identity', position = "dodge", fill="#13449f")+
  geom_text(aes(label = income), position = position_dodge(0.9), 
        vjust=1.3, colour = "white", size=5)+
  scale_y_continuous(breaks = seq(0, 70000, by = 10000), limits = c(0,70000), labels=function(income) format(income, big.mark = "'", scientific = FALSE))
Run Code Online (Sandbox Code Playgroud)

如何在条形标签上使用与 y 轴上相同的千位分隔符?

r bar-chart ggplot2 geom-text

0
推荐指数
1
解决办法
3223
查看次数

闪亮 R 中的反应条形图

我正在尝试在闪亮的应用程序中构建反应式条形图。我有一个名为 stats 的小表

Team      wins  loss  draws
Arsenal   533   120   256
Chelsea   489   201   153
Liverpool 584   186   246
Run Code Online (Sandbox Code Playgroud)

我想构建一个条形图,根据所选团队显示胜利、失败和平局。我无法为此创建反应性条形图。有人可以为此建议一个代码或指导我正确的方向吗?

r bar-chart shiny reactive

0
推荐指数
1
解决办法
1511
查看次数