网易首页 > 网易号 > 正文 申请入驻

我们如何用ChatGPT进行代码学习和debug

0
分享至

本期运用cursor解决生信基本技能学习过程中出现的问题。cursor是一款基于ChatGPT4的代码编辑器,正确运用能够大幅缩短学习周期。

以下记录了问题解决的过程,文章中包含的代码源于《R语言实战》第三章中的案例。

问题一:绘图时背景色显示失败

install.packages("RColorBrewer") library(RColorBrewer) n <- 7 mycolors1 <- brewer.pal(n, "Set1") barplot(rep(1,n), col=mycolors) #条形图 plot(dose, drugA, type="o", main="病人对两种药物五个剂量水平上的响应情况", lty=4,pch=11,cex=1,lwd=1,col=mycolors1,col.axis="red",col.lab="blue",col.main="purple" ,bg="black")

•输出结果中无法显示黑色背景


解决方案

•直接用par()函数,即可输出黑背景,par()函数对代码中所有图形均有效


par(bg="black") plot(dose, drugA, type="o", main="病人对两种药物五个剂量水平上的响应情况", lty=4, pch=11,cex=1,lwd=1,col=mycolors1,col.axis="red",col.lab="blue",col.main="purple")

•输出结果如下

延伸问题

1.打开新页面时,背景色不显示


dev.new() #打开新页面 plot(dose, drugA, type="o", main="病人对两种药物五个剂量水平上的响应情况", lty=4, pch=11,cex=1,lwd=1, col=mycolors1,col.axis="red", col.lab="blue",col.main="purple",bg="black")

•原因:bg参数对于plot函数无效,plot显示区域背景为黑色可能是因为之前通过par设置了背景为黑色,与询问后得到的回答一致


解决方案补充

•可以用ggplot2解决背景色问题,但其他参数需要进一步设置

问题二:PDF保存时出现乱码

•代码同问题一,结果如下

•询问后,结果提示标题字体没有安装

解决方案 思路一:解决字体问题,保存为PDF

•安装字体并保存为PDF,Rstudio中图片得到改善但PDF仍有问题


windowsFonts(myfont=windowsFont("SimHei")) plot(dose, drugA, type="o", main="病人对两种药物五个剂量水平上的响应情况",lty=4, pch=11,cex=1,lwd=1, col=mycolors1,col.axis="red",col.lab="blue",col.main="purple") par(bg="black")

•继续询问

•尝试extrafont包,但是报错了

•将报错内容直接询问,得到同样答案,放弃该思路

思路二:改变输出为PDF的代码,让字体成功显示

•以下是cursor提供的代码,提示使用Cairo包保存


library(Cairo) CairoPDF("plot.png", width = 6, height = 6, dpi = 300, type = "cairo") plot(x, y, main = "你好世界") dev.off()

•尝试后报错,针对报错语句继续询问

•提示直接删除语句,操作后仍不成功

•最后在plot()函数中加上family参数,问题解决

思路三 安装字体,export保存为图片

•结果没问题

来自师姐的补充 问题一:

其实这是一个值得注意的好问题,我们?plot()一下,就会发现 在绘制散点图时,plot函数里面的参数bg用法同points函数,不同于par函数,如图:

points函数里的bg参数是这样解释的:

而par函数里的bg参数是这样:

师妹这个代码的pch是11,如果调整为21(即圆点),再用bg=“black”,就会发现那些点里是黑色填充的(草图附在下面)

总结来说,不同的函数又有不同的参数,虽然熟练了之后很多都见过了,但是想要全部记住是很困难的,学习新的R包的时候也会遇到没有见过的参数,这时候千万不要忘记去help里看一下,耐心读一下这些英文的注释,可能会很有帮助,也会提供一些思路~

cursor的功能虽然很强大,但是可能首先需要我们精准的提出问题,通过郭师妹的尝试我们也看到了,它解读代码的能力是很强的,也会给出很多思路,不过不一定能精确地解决问题;

我想也许下次我们在使用的时候,首先人工摸索一番,再拆解出最关键的那步进行提问,可能能最大化的利用这个AI的功能

问题二:

可以看出来郭师妹是很认真的在尝试解决问题的~cursor提供的回答也确实提供了一些思路,不过可能不能完全依赖它。

其实会出现这个点点点主要是因为在保存PDF时,中文字体会出现乱码。

如果把标题变为英文就不会有这个问题,而一般我们做的图也基本都是英文;但如果想要保存为中文标题的话,可以考虑安装Cairo包,用CairoPDF()函数保存,并在plot函数里使用family参数定义一个中文字体,例如“GB1”就是宋体,这样就可以保存了

正如师兄说的,发现问题解决问题是一种能力,基于问题的学习是很重要的;

有时候学习十几行代码是很容易的,但是蹦出来的一个报错却需要花上成倍的时间去解决,可是解决报错的时候,我们也极大的锻炼了提出问题的能力,检索答案的能力,等等。

正所谓不打不相识,其实在和error过招的时候,也恰恰是我们培养和R语言默契的过程呀~

祝师弟师妹享受解决报错的过程(狗头)

以下就是解决保存PDF时中文字体会出现乱码的方法:


library(Cairo) CairoPDF("myplot1.pdf") #重新起一个pdf文件名字 myplot <- plot(dose,drugA,type="o",main = "病人对两种药物五个剂量水平上的响应情况", family="GB1", #宋体 lty = 4, pch = 11, cex= 1, lwd= 1,col=mycolors1, col.axis="red",col.lab = "black",col.main = "black",bg = "black") dev.off()

SCI母语润色

专注生物医学领域

唯 问 生 物

专注肿瘤基础研究

19901610324同微信

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
开始离谱了!燕郊板块房价从4万变6千,业主集体断供

开始离谱了!燕郊板块房价从4万变6千,业主集体断供

专业聊房君
2026-05-25 07:28:59
合生创展前总裁,栽了

合生创展前总裁,栽了

大嘴説
2026-05-27 14:46:12
文某某虐童已被执行死刑,最高法:践踏人伦底线、手段极其恶劣

文某某虐童已被执行死刑,最高法:践踏人伦底线、手段极其恶劣

新京报
2026-05-26 17:20:32
柯洁行大运!刀剑起舞力斩朴廷桓,绝境翻盘逼韩名将超时认负!

柯洁行大运!刀剑起舞力斩朴廷桓,绝境翻盘逼韩名将超时认负!

L76号
2026-05-27 12:29:11
双汇子公司猪肉抗生素超标37.5倍 长期摄入或致心血管副作用

双汇子公司猪肉抗生素超标37.5倍 长期摄入或致心血管副作用

闪电新闻
2026-05-25 21:26:10
皇马今夏想大换血?根本卖不掉!球员:打死也不走!

皇马今夏想大换血?根本卖不掉!球员:打死也不走!

仰卧撑FTUer
2026-05-27 07:13:03
三大板块出利好 晚间消息解读

三大板块出利好 晚间消息解读

趋势巡航
2026-05-27 06:30:50
11人身亡!伊朗击落了以色列军机?蓬佩奥喊话特朗普,白宫:闭嘴

11人身亡!伊朗击落了以色列军机?蓬佩奥喊话特朗普,白宫:闭嘴

福建睿平
2026-05-26 08:08:03
特朗普的敲门砖奏效!外媒称中国打算在深圳,让中美俄三巨头合体

特朗普的敲门砖奏效!外媒称中国打算在深圳,让中美俄三巨头合体

无意争春
2026-05-26 18:16:22
国乒前世界冠军退役四年后宣布复出,将代表外协参加WTT赛事

国乒前世界冠军退役四年后宣布复出,将代表外协参加WTT赛事

鲸鲱鱼体坛
2026-05-27 20:59:14
一旦局势有变,日本突袭中国的成功率究竟有多高?

一旦局势有变,日本突袭中国的成功率究竟有多高?

兵国大事
2026-05-26 00:30:07
资格赛多人爆冷出局!中国队“冠军团”罕见集体低迷,仅1人摘金

资格赛多人爆冷出局!中国队“冠军团”罕见集体低迷,仅1人摘金

罗掌柜体育
2026-05-27 11:30:59
相亲角来了个印度小伙,全程拽得不行,张嘴就吹自己是印度高种姓

相亲角来了个印度小伙,全程拽得不行,张嘴就吹自己是印度高种姓

西楼知趣杂谈
2026-05-25 11:51:00
安理会上,巴拿马外长如坐针毡,中方在通告里,只字未提约见一事

安理会上,巴拿马外长如坐针毡,中方在通告里,只字未提约见一事

锅锅爱历史
2026-05-27 16:14:11
扩招150人!华工今年全国本科招生总规模7230人

扩招150人!华工今年全国本科招生总规模7230人

南方都市报
2026-05-27 21:05:12
两日连坠毁两架,还全是中国战机!巴基斯坦一口咬定:非人为失误

两日连坠毁两架,还全是中国战机!巴基斯坦一口咬定:非人为失误

凡知
2026-05-23 17:47:32
坚持跑步等于“整容”!看完这几组素人的对比照,你就懂了…

坚持跑步等于“整容”!看完这几组素人的对比照,你就懂了…

马拉松跑步健身
2026-05-19 21:36:06
脸没恢复就别出来拍剧了,顶着肿胀脸,皮笑肉不笑,太让人出戏了

脸没恢复就别出来拍剧了,顶着肿胀脸,皮笑肉不笑,太让人出戏了

往史过眼云烟
2026-05-11 14:53:06
中国情侣跑到日本便利店门口跳舞,本以为美美出片,结果被日网友骂上热搜……

中国情侣跑到日本便利店门口跳舞,本以为美美出片,结果被日网友骂上热搜……

日本物语
2026-05-26 21:51:31
《亢奋》女主再拍大尺度戏,对象竟是理查·基尔之子!

《亢奋》女主再拍大尺度戏,对象竟是理查·基尔之子!

娱圈观察员
2026-05-28 01:39:50
2026-05-28 03:59:00
Justscience incentive-icons
Justscience
期刊推荐、润色、翻译、降重等
614文章数 1182关注度
往期回顾 全部

科技要闻

韬定律:全球在卷纳米数 华为换了一把尺子

头条要闻

特朗普:伊朗即使放弃高浓缩铀也无法获得解除制裁

头条要闻

特朗普:伊朗即使放弃高浓缩铀也无法获得解除制裁

体育要闻

这群老阿姨,是最硬核的马刺球迷

娱乐要闻

王鹤棣风波连累父亲炸串店遭差评?

财经要闻

中国半导体的阳谋

汽车要闻

限时补贴价9.28-10.98万 MG 4X正式上市

态度原创

时尚
艺术
教育
健康
本地

这几件单品太火了,今年流行的风格都离不开它

艺术要闻

蚂蚁新总部封顶了!大圆环到底有啥魔力,科技公司都抢着用?

教育要闻

“把女儿养成财阀千金”,开明家教走红,只看穿着就超越90%家庭

打外泌体会比干细胞更安全吗

本地新闻

用剪纸的方式,打开江苏扬州

无障碍浏览 进入关怀版