• R画图中英文字体完美解决方案


    在某些时候,需要在R画图中添加中文,但是默认情况下,R对中文的支持不好。

    当用R画PDF图,并且图中有中文的时候,安装并加载如下包
    library(showtext)
    然后:
    showtext.auto(enable = TRUE)
    这句命令表示之后用上同样的字体。
    如果要添加字体:
    font.add('SimSun', regular = '/path/to/your/simsun.ttc')
    这个地方要注意,你必须给定指定的字体的位置。
    如果你使用的是MAC,可以打开 font book,查找你想要字体的位置。
    如SimSun:/Library/Fonts/Microsoft/SimSun.ttf
     
    如果需要将含有中文字体的图形保存为pdf文件,同样可以利用前面讲到的方案,最新版的showtext包已经支持了ggplot2,推荐使用此种方案。
     
    showtext包理论上能够调用系统已安装的任何字体,完整的字体列表可以通过font.files()查看。
    这样,在你写的R代码中,开头添加
    library(showtext)
    showtext.auto(enable=True)
    font.add('SimSun', regular = '/Library/Fonts/Microsoft/SimSun.ttf')

    showtext.begin();
    # 一系列绘图命令
    set.seed(123);
    plot(1, xlim = c(-3, 3), ylim = c(-3, 3), type = "n");
    text(runif(100, -3, 3), runif(100, -3, 3),
    intToUtf8(round(runif(100, 19968, 40869)), multiple = TRUE),
    col = rgb(runif(100), runif(100), runif(100), 0.5 + runif(100)/2),
    cex = 2, family = "SimSun");
    title("随机汉字", family = "SimSun");
    # 停止使用showtext
    showtext.end();


     
  • 相关阅读:
    Python练习题 016:猴子吃桃
    Date() 及其 如何验证用户输入的日期是合法的
    关于事件触发的一个小tips
    KVO监听导航栏
    使用CoreText动态下载更换字体
    UICollectionView 的使用
    echarts散点图搭配时间轴
    使用百度echarts画图表的步骤
    canvas画图中drawImage使用
    html5canvas简单画图
  • 原文地址:https://www.cnblogs.com/nxld/p/6211379.html
Copyright © 2020-2023  润新知