R语言适配问题集锦

绘图时的中文乱码问题

我这是Mac Yousemite 10.10.5,在两个地方遇到了中文乱码

1、使用wordcloud包绘制中文标签云时。

library(wordcloud)
mydata <- read.csv('word-count.txt',header=T,stringsAsFactors=F)
jpeg(filename='wordcloud.jpg', width=800,height=800,units='px')
mycolor <- colorRampPalette(c("gray", "red"))(200)
par(family='STKaiti')#解决方案是加上这一句。关于具体的字体名称,可以通过这个命令查看:fc-list :lang=zh-cn
wordcloud(mydata$name,mydata$count,c(6,0.8),random.order=FALSE,color=mycolor)
dev.off()

2、使用igraph绘制社交关系图时

library(igraph)
#读取数据,注意编码格式是utf-8
singer <- read.csv('singers.txt', head=T,fileEncoding='UTF-8',encoding='UTF-8',stringsAsFactors=F)
#加载数据框
#g <- graph_from_data_frame(singer,directed=TRUE)
g <- graph.data.frame(singer,directed=TRUE)
#生成图片,大小是800*800px
jpeg(filename='singers.jpg',width=800,height=800,units='px')
par(family='STKaiti')#这里设置main属性的中文字体,以免其出现中文乱码。
plot(g,
    vertex.size=5,     #节点大小
    layout=layout.fruchterman.reingold,  #布局方式
    vertex.shape='none',    #不带边框
    vertex.label.cex=1.5,    #节点字体大小
    vertex.label.color='red',  #节点字体颜色
    vertex.label.font=4,
    main='歌星关系图谱',
    vertex.label.family='STKaiti',#这里设置每个vertex节点的中文字体,以免其出现中文乱码。
    edge.arrow.size=0.7)    #连线的箭头的大小
#关闭图形设备,将缓冲区中的数据写入文件
dev.off()

3、读取本地文件时,本地文件务必使用UTF-8存储。因为R内部的默认编码就是UTF-8

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值