标签: legend-properties

如何在ggplot2中移动或定位图例

我正在尝试使用图表下方的图例创建一个ggplot2图.

ggplot2书在第112页上说"传说的位置和对齐由主题设置legend.position控制,值可以是右,左,上,下,无(无图例)或数字位置".

下面的代码工作(因为它是默认的"右"),并且它也可以使用"none"作为图例位置,但是"left","top","bottom"都会失败并显示"grid in Grid.Call" .graphics("L_setviewport",pvp,TRUE):视口的非有限位置和/或大小"

library(ggplot2)
(myDat <- data.frame(cbind(VarX=10:1, VarY=runif(10)), 
    Descrip=sample(LETTERS[1:3], 10, replace=TRUE)))
qplot(VarX,VarY, data=myDat, shape=Descrip) + 
    opts(legend.position="right")
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?重新定位一个传奇必须非常普遍,所以我认为这是我.

r legend ggplot2 legend-properties

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

是否可以在matplotlib中添加字符串作为图例项

我在matplotlib中生成一些图,并希望为某些数据添加解释性文本.我希望在我的图例中有一个字符串作为'0-10'项目上方的单独图例项目.有谁知道是否有可能这样做?

在此输入图像描述

这是我的传奇代码:
ax.legend(['0-10','10-100','100-500','500+'],loc='best')

python matplotlib legend legend-properties pandas

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

如何控制Chart.JS饼图图例的位置及其外观?

我可以使用Chart.JS创建一个饼图,其代码如下:

HTML

<div>
    <canvas id="top10ItemsChart" style="padding-left:20px" width="320" height="320"></canvas>
    <div id="top10Legend" class="chart-legend"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

jQuery的

var data = [{
    value: 2755,
    color: "#FFE135",
    label: "Bananas"
}, {
    value: 2256,
    color: "#3B5323",
    label: "Lettuce, Romaine"
}, {
    value: 1637,
    color: "#fc6c85",
    label: "Melons, Watermelon"
}, {
    value: 1608,
    color: "#ffec89",
    label: "Pineapple"
}, {
    value: 1603,
    color: "#021c3d",
    label: "Berries"
}, {
    value: 1433,
    color: "#3B5323",
    label: "Lettuce, Spring Mix"
}, {
    value: 1207,
    color: "#046b00",
    label: "Broccoli"
}, {
    value: 1076,
    color: …
Run Code Online (Sandbox Code Playgroud)

html css legend legend-properties chart.js

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

Matplotlib自动传说外图

我试图bbox_to_anchor()在Python的matplotlib图中使用关键字.

这是我制作的一个非常基本的情节:

import matplotlib.pyplot as plt
x = [1,2,3]
plt.subplot(211)
plt.plot(x, label="test1")
plt.plot([3,2,1], label="test2")
plt.legend(bbox_to_anchor=(0, -0.15, 1, 0), loc=2, ncol=2, mode="expand", borderaxespad=0)
plt.show()
Run Code Online (Sandbox Code Playgroud)

它基于以下示例:http: //matplotlib.org/users/legend_guide.html#plotting-guide-legend

我正在尝试使用自动将图例放置在绘图之外bbox_to_anchor().在此示例中,bbox_to_anchor()列出了4个参数.

在此特定示例(上图)中,图例位于图表下方,因此每次更改图表时需要手动输入数字-0.15(字体大小,轴标题删除等). 是否可以针对以下情况自动计算这4个数字?:

  1. 传说下面的情节
  2. 传说上面的情节
  3. 情节右侧的传说

如果没有,是否有可能在Python中对这些数字做出好的猜测?

此外,在上面的示例代码中,我将最后2个数字设置bbox_to_anchor()为1和0,因为我不明白它们是什么或它们如何工作.最后2个数字bbox_to_anchor()是什么意思?

python plot matplotlib legend legend-properties

17
推荐指数
2
解决办法
6万
查看次数

饼图图例 - Chart.js

我需要帮助将饼图的编号放在图例中

图表图像

如果我用鼠标悬停图表我可以看到相对于每个项目的数字

我想在传奇中显示它

到目前为止重要的代码:

var tempData = {
    labels: Status,
    datasets: [
        {
            label: "Status",
            data: Qtd,
            backgroundColor: randColor
        },

    ]
};

var ctx = $("#pieStatus").get(0).getContext("2d");
var chartInstance = new Chart(ctx, {
    type: 'pie',
    data: tempData,
    options: {
         title: {
            display: true,
            fontsize: 14,
            text: 'Total de Pedidos por Situação'
        },
        legend: {
            display: true,
            position: 'bottom',

        },
        responsive: false
    }

});
Run Code Online (Sandbox Code Playgroud)

"Qtd","randColor"已经是值"var"

legend-properties pie-chart chart.js

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

ggplot2中相同图例中的不同图例键

假设我不需要"正确的"变量映射,但仍希望使用图例键来帮助理解图表.我的实际数据类似于以下df

df <- data.frame(id = 1:10, line = rnorm(10), points = rnorm(10))

library(ggplot2)

ggplot(df) +
  geom_line(aes(id, line, colour = "line")) +
  geom_point(aes(id, points, colour = "points"))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

基本上,我希望传说键相对于points......只是一个点,没有中间的线.我接近这个:

library(reshape2)

df <- melt(df, id.vars="id")

ggplot() +
  geom_point(aes(id, value, shape = variable), df[df$variable=="points",]) +
  geom_line(aes(id, value, colour = variable), df[df$variable=="line",])
Run Code Online (Sandbox Code Playgroud)

但它定义了两个独立的传说.修复第二个代码(并且必须重塑我的数据)也没关系,但我更喜欢一种方法(如果有的话)手动更改任何图例键(并继续使用第一个approch).谢谢!

编辑:

谢谢@alexwhan你更新了我对变量映射的记忆.但是,到目前为止我最简单的方法仍然是以下(非常糟糕的黑客!):

df <- data.frame(id = 1:10, line = rnorm(10), points = rnorm(10))

ggplot(df) +
  geom_line(aes(id, line, colour = "line")) +
  geom_point(aes(id, points, shape = "points")) +
  theme(legend.title=element_blank())
Run Code Online (Sandbox Code Playgroud)

这只是隐藏了两个不同 …

r ggplot2 legend-properties

16
推荐指数
2
解决办法
6806
查看次数

两个geom_points添加了一个图例

我使用以下代码绘制2 geom_point图:

source("http://www.openintro.org/stat/data/arbuthnot.R")
library(ggplot2)
ggplot() +
  geom_point(aes(x = year,y = boys),data=arbuthnot,colour = '#3399ff') +
  geom_point(aes(x = year,y = girls),data=arbuthnot,shape = 17,colour = '#ff00ff') +
  xlab(label = 'Year') +
  ylab(label = 'Rate')
Run Code Online (Sandbox Code Playgroud)

我只是想知道如何在右侧添加图例.具有相同的形状和颜色.三角粉色应该有传说中的"女人"和蓝色圆圈的传说"男人".看起来很简单但经过多次试验我无法做到.(我是ggplot的初学者).

在此输入图像描述

r legend ggplot2 legend-properties

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

如何在matplotlib中更改图例字体名称

我想在matplotlib图的传说中显示Times New Roman中的字体.我已将所有其他刻度标签/轴标签/标题更改为Times New Roman,并搜索了文档,但我只能找到如何使用prop 参数更改图例中的字体大小pyplot.legend()

谢谢

当然,在发布后,我找到了答案.针对同一问题的其他人的解决方案:
import matplotlib as mpl
mpl.rc('font',family='Times New Roman')

python matplotlib legend legend-properties

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

在图例ggplot2周围画一个框

我创建了一个带有自定义图例的情节ggplot2.我试图在图例中的所有项目周围绘制一个框,但是我只能在每个单独的项目周围绘制一个框.如何围绕所有项目只创建一个框?

library(ggplot2)

ggplot(mpg, aes(displ, cty)) + 
  geom_point(aes(shape = "Data")) +
  stat_smooth(aes(linetype = "Regression"), method = "lm", 
              formula = y ~ x, se = FALSE, colour = 1, size = 0.5) +
  scale_shape_manual(values = 1) +
  labs(shape = "", linetype = "") +
  theme_classic() + 
  theme(panel.border = element_rect(colour = "black", fill=NA),
        aspect.ratio = 1, axis.text = element_text(colour = 1, size = 12),
        legend.background = element_rect(linetype = 2, size = 0.5, colour = 1))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r legend ggplot2 legend-properties

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

在ggvis中的图表下方添加一个水平离散图例

我想在ggvis图表下方制作一个水平图例.我可以使用图例属性将其放置在图表下方,但不知道如何使图标在图例标题下方水平.以下是可重复的最低代码(从网上抓取).

df1 = data.frame(x=sample(1:10), y=sample(1:10))
df2 = data.frame(x=1:10, y=1:10)
df3 = data.frame(x=1:10, y=sqrt(1:10))

df2$id <- 1
df3$id <- 2
df4    <- rbind(df2,df3)
df4$id <- factor(df4$id)

df4 %>% ggvis(x=~x, y=~y, stroke=~id) %>% layer_lines() %>%
    # make sure you use add relative scales
    add_relative_scales() %>%
    # values for x and y need to be between 0 and 1
    # e.g for the x-axis 0 is the at far-most left point and 1 at the far-right 
    add_legend("stroke", title="Cylinders",
               properties=legend_props(
                   legend=list(
                       x=scaled_value("x_rel", …
Run Code Online (Sandbox Code Playgroud)

plot r legend-properties ggvis

12
推荐指数
1
解决办法
222
查看次数

标签 统计

legend-properties ×10

legend ×7

r ×5

ggplot2 ×4

matplotlib ×3

python ×3

chart.js ×2

plot ×2

css ×1

ggvis ×1

html ×1

pandas ×1

pie-chart ×1