首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在polygonGrob中将单行美学转换为多行的自定义geom遇到了问题

在使用polygonGrob将单行美学转换为多行的自定义geom时遇到了问题。

首先,polygonGrobgrid包中的一个函数,用于创建多边形的图形对象。它可以接受一个美学参数df,用于指定多边形的坐标数据。而将单行美学转换为多行的目的是为了在单个多边形中绘制多个行。

针对这个问题,可能会遇到以下一些问题和解决方案:

  1. 问题:如何将单行美学转换为多行? 解决方案:可以使用tidyverse中的函数tidyr::separate()将单行美学拆分为多行。例如,如果单行美学是由逗号分隔的多个行组成的字符串,则可以使用tidyr::separate()函数将其拆分为多个行。
  2. 问题:如何将多个行数据传递给polygonGrob函数? 解决方案:可以使用循环或者lapply()函数将多个行数据依次传递给polygonGrob函数,并将每个多边形的图形对象存储在一个列表中。最后,可以使用grid.arrange()函数将多个图形对象组合在一起。
  3. 问题:如何为每个多边形指定不同的颜色或其他美学属性? 解决方案:可以在循环或lapply()函数中根据需要为每个多边形设置不同的颜色或其他美学属性。

以下是一个简单的示例代码,演示如何使用polygonGrob将单行美学转换为多行的自定义geom:

代码语言:txt
复制
library(grid)
library(tidyverse)

# 单行美学字符串
single_row_aesthetics <- "x1,y1,x2,y2,color
                          1,1,2,2,red
                          3,3,4,4,blue
                          5,5,6,6,green"

# 将单行美学字符串拆分为多行
df <- read_csv(text = single_row_aesthetics)

# 创建一个空的图形对象列表
grobs <- list()

# 循环遍历每个多边形的数据,并创建图形对象
for (i in seq_len(nrow(df))) {
  grobs[[i]] <- polygonGrob(x = c(df$x1[i], df$x2[i], df$x2[i], df$x1[i]),
                            y = c(df$y1[i], df$y1[i], df$y2[i], df$y2[i]),
                            gp = gpar(fill = df$color[i]))
}

# 将多个图形对象组合在一起
grid.arrange(grobs = grobs)

在上述示例代码中,首先将单行美学字符串拆分为多行数据,并使用循环创建了多个多边形的图形对象。最后,使用grid.arrange()函数将多个图形对象组合在一起。

这是一个简单的解决方案示例,具体的实现方式可能会因具体的需求和数据格式而有所不同。对于云计算领域相关的问题,可根据具体的场景和需求来选择适当的云计算产品,例如腾讯云的云服务器CVM、对象存储COS、容器服务TKE等。请根据实际情况选择适合的产品,并参考腾讯云官方文档获取更多详细信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

fastjson知多少

fastjson目标(官方原话): 我翻译一下: 性能非常好; 封装非常高; 转换非常强; 泛型也支持; 自定义表示; 复杂也支持; 这6个目标,书读少我理解起来费劲...阿里巴巴也确实做到了,fastjson(24.9k star)作为国产原创库,PK掉了jackson(7.6k star)和gson(21.3k star),国内应用领域坐上了头把交椅。...JSON转换为Java对象时,传入String可以写在单行: String jsonString = "{\"id\":0,\"name\":\"admin\",\"users\":[{\"id\"..." \"name\":\"root\"\n" + " }\n" + " ]\n" + "}"; 单行多行都能够转换成功...字符串JSON提取数据 除了Java对象和JSON相互转换以外,还有个对于测试来说,更为常见使用场景:把字符串转为JSON,提取其中某些字段数据。

33330

python3.x

a = 3; 关于注释和输出 Python单行注释#开头,多行为''' '''或者""" """,js单行//,多行/**/ # 我是Python注释 ''' 我也是python多行注释 '''...# 我是python输出 //我是js单行注释 /* 我是js多行js注释 */ console.log("Hello,javascript!")...【一三位】八进制一位相当于二进制三位(二三次方),转换时按照十进制转换为二进制,快速一点方法是8421法,例如八进制5,即4和1组成即101。...5 8421 101 十六进制=>二进制: 【一四位】十六进制一位相当于二进制三位(二三次方),转换时按照十进制转换为二进制 二进制=>八进制: 【三位一取】从低位开始取,高位不够补0。...存储数据时,用最高位表示符号,1标识负数,0表示正数 原码、反码、补码一点点 原码:规定了字节数,写明了符号位,就得到了数据原码。 反码:正数反码是其原码,负数反码是其原码符号位。

1.4K40

rsync通过服务同步、日志文件、screen工具

10.32 rsync通过服务同步(上) 使用该方法进行同步之前需要先在服务开启相应服务同时要监听一个端口(可自定义),默认是监听873端口,开启服务之前编辑rsync配置文件“/etc/rsyncd.conf...[test] #指定模块名,里面内容自定义 path=/tmp/rsync #指定数据存放路径 use chroot=true #use chroot=true/false:安全参数,表示传输文件前首先...nomail 储时不发送日志文件 olddir directory 储后日志文件放入指定目录,必须和当前日志文件同一个文件系统...它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令命令参数。xargs也可以将单行多行文本输入转换为其他格式,例如多行单行单行多行。...多行输入单行输出 [root@adai003 ~]# cat test 1 2 3 4 a b c d [root@adai003 ~]# cat test | xargs 1 2 3 4 a b c

2.5K20

JSON端口操作实例

该端口较多是运用在API接口调用集成方案项目当中,我们以百思买项目为例,知行之桥将接收到百思买EDI报文首先映射为XML格式文件,最后再通过JSON端口转换为Json;用户给百思买发送数据时,也会将...但也会有一些需要特殊设置场景,这里举几个例子以及知行之桥中操作示例,我们一起来看看吧。一、“根元素名称”设置Json端口设置页面,“根元素名称”栏目可设置指定根元素,默认设置为Items。...使用默认设置Items时,左图输入Json转出XML如右图所示,输出XML根元素为Items:除了默认设置Items,也可自定义根元素,输出XML会以此定义作为根元素。...比如,当自定义设置为PO时,如下图所示,输出XML根元素为PO:二、设置单个数组节点也带有数组符号XMLJSON时,若只有一行明细,此时JSON端口转出Json文件中,单行明细以JSON对象输出,...但是很多时候用户需求是只要是明细行,无论是单行明细还是多行明细,都应该以JSON数组格式输出。

1.5K30

10.Go语言-包

10.2 创建包 下面我们创建自定义 book 包,其中,属于某一个包源文件都应该放置于一个单独命名文件夹里,按照 Go 惯例,应该用包名命名该文件夹。...所以应当先创建一个 book 文件夹,位于该目录下创建一个 book.go 源文件,里面实现我们自定义数学加法函数。请注意函数名首字母要大写。...如果在 book.go 中将函数名从 ShowBookInfo 变为 showBookInfo ,并且 main.go 中调用 book.showBookInfo 函数,则该程序编译不通过。...欢喜" bookInfo, _ := book.ShowBookInfo(bookName, author) fmt.Println("bookInfo = ", bookInfo) } 导入包可以单行导入也可以多行导入...,像上面的程序代码就是多行导入例子,一般我们也建议使用多行导入,当然你也可以使用单行导入: import "fmt" import "book" 10.4 使用别名 如果我们导入了两个具有同一包名包时会产生冲突

28320

JavaScript基础

1、原样输出标签内容: <:< >:> 2、单行注释//(ctrl+/) 多行注释(ctrl+shift+/) /* */ 3、JavaScript中基本数据类型有个特殊数据类型 null空...undefined未声明 复合数据类型: 声明变量:var xxxx=xxx,可以一次性声明多个变量如:var name = "",age = 18,sex = ""; 变量赋值:xxx = 18 标识符:用户自定义所有名字都叫做标识符...输出变量/常量类型:typeof 变量名/常量名 4、运算符 算数运算符:除了+-*/%外还有++ -- 关系运算符: 逻辑运算符 任何类型数据和字符串类型数据做相加操作时,其他类型数据会转换为字符串类型.../= *= %= 任何其他数据类型除了和字符串做相加操作外,与数字类型做算数运算时候,其他数据类型都会自动转换成数字 特殊数据类型中:NULL>0;underfined>NaN 数字0成布尔值为false...空字符串转成布尔值为false,所有非空字符串转成布尔值为true null和underfined转成布尔值都为false Number() parseInt()取整如20a》20 parseFloat() javascript

59510

R语言之 ggplot 2 和其他图形

1.初识 ggplot2 包 ggplot2 包提供了一套基于图层语法绘图系统,它弥补了 R 基础绘图系统里函数缺乏一致性缺点,将 R 绘图功能提升到了一个全新境界。...变量 am 原数据集里是一个数值型变量(取值为 0 和 1),实质上它应该是一个分类变量,因此我们先把它转换为一个二水平因子。...函数 aes( ) 就像是 ggplot2 大脑,负责美学设计,而众多geom 开头函数就像是 ggplot2 双手,负责将这些美学设计呈现出来。...= position_jitter(0.1), alpha = 0.5) + theme_bw() p6 3.比例构成 许多数据会涉及比例问题,提取比例信息能使我们了解各个组成部分对于整体重要性...对于一组问题,可以使用 sjPlot 包里函数 plot_stackfrq( ) 对不同选项比例进行可视化。

39920

MySQL括号字符串计数

目录 问题提出: 解决方案: 1. 使用正则表达式 2. 不使用正则表达式 3. 字典表 + 自定义函数 4....总想法是,首先对评论字符串以“]”为分隔符多行,然后针对不同情况对每行求字符长度,之后按每条评论ID分组求和,得到符合规则每条评论长度,最后按评论长度分组进行二次聚合,得到每种长度个数。...这是针对类似ID为44132703这种中括号出现在评论字符串中间情况,只有这样才能用统一方法进行多行操作。...8-11行中子查询,得出每条评论中成对中括号个数(l1列),0表示评论字符串中没有成对中括号,结果如下: 图片 7-12行中子查询,结果为使用以“]”为分隔符多行: 图片...本例中,不使用正则表达式解决方案不但冗长,而且由于用到笛卡尔积由单行多行,之后再聚合,性能比正则表达式差多。实际表中有55107行记录,方案1秒出结果,方案2需要执行50多秒。

1.3K20

20 个非常有用 Python 单行代码!

本文中,给大家分享20 个 Python 一行代码,你可以 30 秒或更短时间内轻松学习它们。这种单行代码将节省你时间,并使你代码看起来更干净且易于阅读。...1 一行 For 循环 for 循环是一个多行语句,但是 Python 中,我们可以使用列表推导式方法一行中编写 for 循环。以过滤小于250值为例,查看下面的代码示例。...Error")') # 错误 9 一行列表字典 我们可以使用 Python enumerate() 函数将 List 转换为一行字典。...enumerate() 中传递列表并使用dict() 将最终输出转换为字典格式。..., v1 print(v1, v2) # 200 100 12 一行排序 排序是编程中一个普遍问题,Python 有许多内置方法来解决这个排序问题

3K20

如何处理地图投影转换

之前在学习ggplot2中geom_polygon()图层制作地图图形时,从来没有苦恼过投影问题,因为coord_map()中直接给出投影转换参数,如果要制作基于国家地图,直接赋值为polyconic...R语言中支持GIS数据模型包一共有两个:sp包和sf包,旧版ggplot2中,geom_polygon高度依赖从sp导入数据对象(虽然也可以从sf中获取)。...它最大优势是我们直接导入数据模型不需要做清洗转换了(因为geom_sf函数可以自动识别),不需要声明经纬度和group了,仅需指定我们想要自定义美学映射即可,其他都交给geom_sf处理吧。...由于投影后投影坐标系已经被投影算法转换,所以使用geom_text等图层函数时,务必要使用与几何对象投影一致经纬度点,这里使用sf中点中心计算函数最为快捷。...Python中投影问题同样需要手动处理: from shapely.geometry import Point,LineString import geopandas as gpd from matplotlib.colors

1.7K30

Linux-xargs命令

xargs也可以将单行多行文本输入转换为其他格式,例如多行单行单行多行。 xargs默认命令是echo,空格是默认定界符。...这意味着通过管道传递给xargs输入将会包含换行和空白,不过通过xargs处理,换行和空白将被空格取代。 xargs是构建单行命令重要组件之一。...x y z 多行输入单行输出 [root@entel2 ~]# cat xargs.txt a b c d e f g h i j k l m n o p q r s t u v w x y...,就好像你命令是命令行提示下被解释一样,类似于批处理文件里一系列命令。 每个shell脚本有效地运行在父shell(parent shell)一个子进程里。...子shell是嵌圆括号()内部命令序列,子Shell内部定义变量为局部变量。

86520

Linux xargs 命令

xargs 也可以将单行多行文本输入转换为其他格式,例如多行单行单行多行。...-p 当每次执行一个argument时候询问一次用户。-n num 后面加次数,表示命令执行时候一次用argument个数,默认是用所有的。-t 表示先打印命令,然后再执行。...定义一个测试文件,内有多行文本数据:# cat test.txta b c d e f gh i j k l m no p qr s tu v w x y z多行输入单行输出:# cat test.txt...echo $*arg.txt文件内容:# cat arg.txtaaabbbcccxargs 一个选项 -I,使用 -I 指定一个替换字符串 {},这个字符串 xargs 扩展时会被替换掉,当 -I...用 xargs 去避免这个问题:find . -type f -name "*.log" -print0 | xargs -0 rm -fxargs -0 将 \0 作为定界符。

1.6K10

初学乍练redis:两行shell脚本实现slowlog持久化储(去重保留历史条目、时间戳格式化)

定期调度执行 一、问题提出         排查redis性能问题时,从slowlog中找执行缓慢命令进行优化是一种常规手段。...特别是慢日志较多情况下,有些问题命令很快就会被刷新出slowlog,从而很难跟踪到。        ...为了解决历史慢日志跟踪问题,需要将redis slowlog定期储到其它存储介质,如磁盘文件或MySQL数据库等。本文介绍使用shell脚本将slowlog储到普通文本文件设计实现。...shell处理文本文件时,一般都是按某些条件逐行去重,面对这种多行整体去重场景,很自然想到行转列,将每个条目的多行转换成一行,然后整行去重就容易了。...去重后,再将每个条目的单行转成原始多行格式化显示。

1.1K20

初学乍练redis:两行shell脚本实现slowlog持久化

定期调度执行 ---- 一、问题提出 排查redis性能问题时,从slowlog中找执行缓慢命令进行优化是一种常规手段。...特别是慢日志较多情况下,有些问题命令很快就会被刷新出slowlog,从而很难跟踪到。...为了解决历史慢日志跟踪问题,需要将redis slowlog定期储到其它存储介质,如磁盘文件或MySQL数据库等。本文介绍使用shell脚本将slowlog储到普通文本文件设计实现。...shell处理文本文件时,一般都是按某些条件逐行去重,面对这种多行整体去重场景,很自然想到行转列,将每个条目的多行转换成一行,然后整行去重就容易了。...去重后,再将每个条目的单行转成原始多行格式化显示。

1.3K40

编写高质量可维护代码:一目了然注释

但是 LESS 和 SCSS 中支持注释语法和 JS 中保持一致,有单行注释 // 和多行注释 /* */ 两种。单行注释编译之后不会被保留。...总是 // 后留一个空格 // 这是一行注释 多行注释 总是保持星号纵向对齐(结束符前留一个空格) 不要在开始符、结束符所在行写注释 尽量使用单行注释代替多行注释 注释函数时,推荐使用多行注释...Python 中也常常用到 ''' 是 Python 中多行注释语法,用两个 ''' 包含被注释段落 # python 单行注释一 print("I could have code like this...在上面这段代码把 \u000d 给解析了,后面的代码就到了下面一行,超出了被注释范围(单行注释注释范围仅在当前行),所以执行结果为 钱二 而非 赵大。...itemName=OBKoro1.korofileheader Vscode 中用于生成文件头部注释和函数注释插件 文件头部添加注释 文件开头添加注释,记录文件信息/文件传参/出参等 支持用户高度自定义注释选项

1K20

数据可视化

然后我们继续观察年份与寿命关系,通常我们可以猜测,随时间推移,人寿命是可以续一波(例如改变了中国他),所以我们尝试中将这种趋势展现。...qplot(gdpPercap, lifeExp, data=X, log ="x", alpha=I(0.5), color=year, geom=c("point","path")) 其中将同一国家不同年份数据进行了连线...,我们明显观察到了lifeExp随时间增长趋势。...qplot(year.fac, lifeExp, data=X,color=I("red"), geom="jitter") 下面让我们回到大洲与lifeExp关系上,非酋vs欧皇时候到了… 在这里我们选择用柱形图...,首先横轴代表着lifeExp各个区间,纵轴代表这个区间存在样本数,最后我们每一个lifeExp数据上用颜色区分样例来源于哪个大洲,于是我们得到了如下结果: 这里我们可以明显发现: 预期寿命长国家里

2.4K80

一维表、二维表那些事

对,就是学校课程表。用二维表样式来制作课程,是再合理不过了。这张伴随学生时代课程表,给人留下印象太深,即便到了工作岗位,表格制作和打印,也大都是二维表样式 ?...但凡从系统里导出来表,不管是XLS还是CSV,都是一维表样式 换句话说,一维表是符合数据库设计规范——数据库设计规范是一套参考体系,技术世界里不分国界地沿用了超过三十年 你只要知道,需要行和列来定位数值...,就是二维表;仅靠单行就能锁定全部信息,就是一维表 当然,一维表、二维表可以相互转换 一维二维用透视表,反之用逆透视 我们把一维表称为源数据,特点是数据丰富详实,适合做流水账,方便存储,有利于做统计分析...;二维表称为展示数据,特点是明确直观,适合打印、汇报 依然用之前示例(全国影城数据)来演示 这是系统导出一维表,全国上万家影城,2019年上半年各月的人次明细,总计有六万多行,地理维度有省市区三层...一维表显然不适合人类阅读,想了解汇总信息,只能通过透视功能转换为二维表。一维表信息越详实,二维表可展示方式就越灵活 ? ? ?

3.5K20

生信入门马拉松之R语言基础- R语言作图(Day 6)

函数都有效,自定义可以局部函数中设置1.2 练习题搜索引擎搜索箱线图-boxplotggplot(iris)+ geom_boxplot(mapping = aes(x = Species,y =...超多点图或超多行热图不适用ppt保存方式,因为ppt会变成卡卡!...Species))+ geom_boxplot()+ geom_jitter(aes(shape = Species))+ coord_flip()作业里认识到几个问题:图层叠加问题:什么图层图先写...R语言综合应用【小洁老师语录】发现问题眼睛,面对困难信心,解决问题能力tidyverse,大神包,小生态系统,《R数据科学》2.1 玩转字符串(3)rm(list = ls())if(!...点样本看数据分布范围,有没有全部0附近。有大量小于0就是不正常。是否有分组信息?找实验分组,每个组应超过3个。生信技能树公众号生信入门马拉松课程小洁老师

21930
领券