Tag: 图例

如何在matplotlib中创build一个可拖动的图例?

我在matplotlib中的轴对象上绘制了一个图例,但声称将它放置在一个聪明的地方的默认位置似乎不工作。 理想情况下,我希望用户可以拖动图例。 如何才能做到这一点?

matplotlib:颜色条和文本标签

我想为热图创build一个颜色条图例,使标签位于每个离散颜色的中心。 请看下面的例子( 从这里借用 ) import matplotlib.pyplot as plt import numpy as np from matplotlib.colors import ListedColormap #discrete color scheme cMap = ListedColormap(['white', 'green', 'blue','red']) #data np.random.seed(42) data = np.random.rand(4, 4) fig, ax = plt.subplots() heatmap = ax.pcolor(data, cmap=cMap) #legend cbar = plt.colorbar(heatmap) cbar.ax.set_yticklabels(['0','1','2','>3']) cbar.set_label('# of contacts', rotation=270) # put the major ticks at the middle […]

ggplot2保持未使用的水平barplot

我想在我的条形图中绘制未使用的级别(也就是计数为0的级别),但是,未使用的级别会丢失,我无法弄清楚如何保留它们 df <- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5)) df$type <- factor(df$type, levels=c("A","B", "C")) ggplot(df, aes(x=group, fill=type)) + geom_bar() 在上面的例子中,我想看到C绘制计数为0,但它是完全没有… 感谢任何帮助Ulrik 编辑: 这是我想要的 df <- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5)) df1 <- data.frame(type=c("A", "A", "A", "B", "B", "A", "A", "C", "B", "B"), group=c(rep("group1", 5),rep("group2", 5))) df$type <- factor(df$type, levels=c("A","B", "C")) df1$type <- […]

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

我正在试图创build一个ggplot2阴谋与图下的传说。 ggplot2书上第112页说:“图例的位置和理由由主题设置legend.position控制,值可以是右,左,上,下,无(无图例)或数字位置”。 下面的代码可以工作(因为“right”是默认的),它也可以作为图例位置使用“none”,但是“left”,“top”,“bottom”,全部失败,出现“Error 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") 我究竟做错了什么? 重新定位一个传奇必定非常普遍,所以我认为这是我。

如何创build每个标签只有一个符号的散点图图例?

如何创build散点图图例,而且每次都不显示两个符号? 我可以理解为什么当你用线条连接符号时你会想要这个,但是对于一个纯粹的散点图,我只需要在图例中是符号的一个例子。 从之前的一个stackoverflowpost这个情节显示了我的意思是:

控制ggplot2图例而不影响绘图

我正在用ggplot2来绘制线条,如下所示: ggplot(iris, aes(Petal.Width,Petal.Length,color=Species)) + geom_line() + theme_bw() 。 我发现传说中的痕迹很小,所以我希望它们更大。 如果我改变尺寸,情节上的线条也会改变: ggplot(iris, aes(Petal.Width,Petal.Length,color=Species)) + geom_line(size=4) + theme_bw() 。 但是我只想在传说中看到粗线条,我想让情节上的线条变细。 我试图使用legend.key.size但它改变了标记的平方,而不是线的宽度: library(grid) # for unit ggplot(iris,aes(Petal.Width,Petal.Length,color=Species))+geom_line()+theme_bw() + theme(legend.key.size=unit(1,"cm")) 我也试着用点: ggplot(iris,aes(Petal.Width,Petal.Length,color=Species)) + geom_line() + geom_point(size=4) + theme_bw() 当然,它仍然影响剧情和传奇: 我想用图线和图例中的点/点。 所以我问了两件事情: 如何改变图例中的线条宽度而不改变graphics? 如何绘制图中的线条,但在图例中绘制点/点/方块?

删除matplotlib图中的图例

要将图例添加到matplotlib图中,只需运行legend() 。 如何从情节中删除图例? (最接近我的是运行legend([])以清空数据中的图例,但在右上angular留下一个丑陋的白色矩形。)

将matplotlib图例移动到轴的外侧,使其被图框截断

我熟悉以下问题: Matplotlib savefig与图外的图例 如何把这个传说排除在阴谋之外 似乎这些问题的答案有能力摆脱轴的精确缩小的豪华,以便传说适合。 但是,缩小坐标轴并不是一个理想的解决scheme,因为它使数据变小,实际上更难解释。 特别是当它的复杂和有很多事情发生…因此需要一个大的传奇 文档中复杂图例的示例演示了对此的需求,因为图中的图例实际上完全遮挡了多个数据点。 http://matplotlib.sourceforge.net/users/legend_guide.html#legend-of-complex-plots 我希望能够做的是dynamic扩大数字框的大小,以适应扩大的数字图例。 import matplotlib.pyplot as plt import numpy as np x = np.arange(-2*np.pi, 2*np.pi, 0.1) fig = plt.figure(1) ax = fig.add_subplot(111) ax.plot(x, np.sin(x), label='Sine') ax.plot(x, np.cos(x), label='Cosine') ax.plot(x, np.arctan(x), label='Inverse tan') lgd = ax.legend(loc=9, bbox_to_anchor=(0.5,0)) ax.grid('on') 请注意,最终的标签“反转棕褐色”实际上是在数字框外面(而且看起来很差 – 不是出版质量!) 最后,我被告知这是在R和LaTeX中的正常行为,所以我有点困惑,为什么在python中如此困难…是否有历史原因? Matlab在这个问题上同样很差吗? 我在pastebin http://pastebin.com/grVjc007上有这个代码的(稍微)更长的版本

将图例添加到ggplot2线图

我有一个关于ggplot2的传说的问题。 我设法在同一个图中绘制三条线,并且想要使用三种颜色添加图例。 这是使用的代码 library(ggplot2) require(RCurl) link<-getURL("https://dl.dropbox.com/s/ds5zp9jonznpuwb/dat.txt") datos<- read.csv(textConnection(link),header=TRUE,sep=";") datos$fecha <- as.POSIXct(datos[,1], format="%d/%m/%Y") temp = ggplot(data=datos,aes(x=fecha, y=TempMax,colour="1")) + geom_line(colour="red") + opts(title="TITULO") + ylab("Temperatura (C)") + xlab(" ") + scale_y_continuous(limits = c(-10,40)) + geom_line(aes(x=fecha, y=TempMedia,colour="2"),colour="green") + geom_line(aes(x=fecha, y=TempMin,colour="2"),colour="blue") + scale_colour_manual(values=c("red","green","blue")) temp 和输出 我想用三种颜色和variables名称(TempMax,TempMedia和TempMin)添加一个图例。 我努力了 scale_colour_manual 但是找不到确切的方法。 不幸的是原始数据从链接网站删除,无法恢复。 但他们来自这种格式的气象数据文件 "date","Tmax","Tmin","Tmed","Precip.diaria","Wmax","Wmed" 2000-07-31 00:00:00,-1.7,-1.7,-1.7,-99.9,20.4,20.4 2000-08-01 00:00:00,22.9,19,21.11,-99.9,6.3,2.83 2000-08-03 00:00:00,24.8,12.3,19.23,-99.9,6.8,3.87 2000-08-04 00:00:00,20.3,9.4,14.4,-99.9,8.3,5.29 […]

如何把这个传说排除在阴谋之外

我有一个系列的20个地块(不是小插曲)在一个单一的数字。 我希望传奇在盒子外面。 与此同时,我不想改变轴,随着数字的大小减less。 请帮助我以下查询: 我想保留graphics区域外的图例框。 (我想让传说在剧情区域的右侧)。 是否有减less图例框内的文字的字体大小,以使图例框的尺寸变小。