Before we start

My chinese skills are poor and biased. I did learn during my internship and I continue to study while I can translate "last year our exports were 19,000 USD million" but I don't know all the colors.

I will use this dataset and for the example and you can use any chinese font you want. In this example I'm using Adobe Heiti.

Initial setup

These are the necessary libraries and I did read directly from the xlsx file before defining levels, labels and colors.

library(XLConnect)
library(ggplot2)
library(RColorBrewer)
library(scales)
library(plyr)
library(forcats) file <- paste0(getwd(),"/ggplot2_chinese/trade_data_chile_china.xlsx") data <- readWorksheetFromFile(file, sheet = "Sheet1", region = "A3:K13", header = TRUE)
data2 <- readWorksheetFromFile(file, sheet = "Sheet1", region = "A17:F27", header = TRUE)
data3 <- readWorksheetFromFile(file, sheet = "Sheet1", region = "A30:C35", header = TRUE)
data4 <- readWorksheetFromFile(file, sheet = "Sheet1", region = "A39:E59", header = TRUE)
data5 <- readWorksheetFromFile(file, sheet = "Sheet1", region = "A62:G72", header = TRUE)
data6 <- readWorksheetFromFile(file, sheet = "Sheet1", region = "A75:C125", header = TRUE) data <- as.data.frame(data)
data2 <- as.data.frame(data2)
data3 <- as.data.frame(data3)
data3$country <- factor(data3$country, levels = c("china","usa","eu","japan","korea"), labels = c("中国","美国","欧盟","日本","朝鲜"))
data4 <- as.data.frame(data4)
data4$product <- factor(data4$product, levels = c("copper","others"), labels = c("铜","木浆, 水果, 鱒屬和等产品"))
data4 <- ddply(data4, .(year), transform, pos = cumsum(percentage) - (0.5 * percentage))
data4 <- ddply(data4, .(year), transform, pos2 = cumsum(exports) - (0.5 * exports))
data5 <- as.data.frame(data5)
data6 <- as.data.frame(data6)
data6$product <- factor(data6$product, levels=c("fruits", "processedfoods", "bottledwine", "salmon", "forestryandfurniture"), labels=c("水果", "再制", "瓶装酒", "鱒屬", "林业和木家具")) brewer.pal(8, "Paired")
[1] "#A6CEE3" "#1F78B4" "#B2DF8A" "#33A02C" "#FB9A99" "#E31A1C" "#FDBF6F"
[8] "#FF7F00"
cbPalette <- c("#1F78B4", "#E69F00", "#56B4E9", "#009E73", "#F0E442", "#556b2f", "#D55E00", "#CC79A7")
cbPalette2 <- c("#4169e1", "#d68a59","#556b2f", "#FB9A99", "#33A02C")
cbPalette3 <- c("#F0E442", "#56B4E9")

The charts

Here are different charts that I did create during my internship. These charts are actually "updated" as we still don't have 2016 official trade reports.

I will show how to use the new subtitles functionality in ggplot2 v2.2.0.

g1 <- ggplot() +
geom_bar(aes(y = percentage, x = country, fill = country), data = data3, stat="identity") +
scale_fill_manual(values=cbPalette2) +
geom_text(data=data3, aes(x = country, y = (percentage + 2), label = paste0(percentage,"%")), colour="black", family="AdobeHeitiStd-Regular", size = 5) +
scale_y_continuous(breaks=seq(0,40,5), labels = dollar_format(suffix = "%", prefix = "")) + expand_limits(y=c(0,25)) +
labs(x="",y="百分数") +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
theme(legend.position="none", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("2015年领先的出口市场",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"),
text=element_text(size=18, family="AdobeHeitiStd-Regular"),
axis.text.x=element_text(colour="black"))
g1

g2 <- ggplot() +
geom_bar(aes(y = pcentexports, x = year, fill = "pcentexports"), data = data5, stat="identity") +
scale_fill_manual(values="#4169e1") +
geom_text(data=data5, aes(x = year, y = pcentexports +2, label = paste0(pcentexports,"%")), colour="black", family="AdobeHeitiStd-Regular", size = 5) +
scale_x_continuous(breaks=seq(2006,2015,1)) + scale_y_continuous(breaks=seq(0,25,5), labels = dollar_format(suffix = "%", prefix = "")) +
expand_limits(y=c(0,25)) + labs(x="年",y="百分数") +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
theme(legend.position="none", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("出口中国的产品的结构",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular"))
g2

g3 <- ggplot() +
geom_bar(aes(y = pcentimports, x = year, fill = "pcentimports"), data = data5, stat="identity") +
scale_fill_manual(values="#000080") +
geom_text(data=data5, aes(x = year, y = pcentimports +2, label = paste0(pcentimports,"%")), colour="black", family="AdobeHeitiStd-Regular", size = 5) +
scale_x_continuous(breaks=seq(2006,2015,1)) +
scale_y_continuous(breaks=seq(0,25,5), labels = dollar_format(suffix = "%", prefix = "")) +
expand_limits(y=c(0,25)) + labs(x="年",y="百分数") +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
theme(legend.position="none", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("进口中国的产品的结构",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular"))
g3

g4 <- ggplot() +
geom_bar(aes(y = percentage, x = year, fill = fct_rev(product)), data = data4, stat="identity") +
scale_fill_manual(values=cbPalette3) + geom_text(data=data4, aes(x = year, y = pos, label = paste0(percentage,"%")), colour="black", family="AdobeHeitiStd-Regular", size = 4) +
scale_x_continuous(breaks=seq(2006,2015,1)) +
scale_y_continuous(labels = dollar_format(suffix = "%", prefix = "")) +
labs(x="年", y="百分数") + theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("出口中国结构 (%)",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular"))
g4

g5 <- ggplot() +
geom_bar(aes(y = exports, x = year, fill = fct_rev(product)), data = data4, stat="identity") +
scale_fill_manual(values=cbPalette3) + geom_text(data=data4, aes(x = year, y = pos2, label = exports), colour="black", family="AdobeHeitiStd-Regular", size = 4) +
scale_x_continuous(breaks=seq(2006,2015,1)) +
labs(x="年", y="百万美元") +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("出口中国结构 ($)",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular"))
g5

g6 <- ggplot() +
geom_area(aes(y = exports, x = year, fill = fct_rev(product)), data = data6, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
scale_y_continuous(breaks=seq(0,1600,400)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_fill_brewer(palette="Paired") +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("无铜矿或造纸木材出口中国",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular"))
g6

g7 <- ggplot() +
geom_line(aes(y = exportscc, x = year, colour = "exportscc"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = importscc, x = year, colour = "importscc"), size=1.5, data = data, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
scale_y_continuous(breaks=seq(0,20000,5000)) +
expand_limits(y=c(5000,20000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("出口的产品", "进口产品"), values = c("#4169e1", "#000080")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("商业智利-中国",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) + guides(col = guide_legend(nrow = 2))
g7

g8 <- ggplot() +
geom_line(aes(y = exportscusa, x = year, colour = "exportscusa"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = importscusa, x = year, colour = "importscusa"), size=1.5, data = data, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
scale_y_continuous(breaks=seq(0,20000,5000)) +
expand_limits(y=c(5000,20000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("出口的产品", "进口产品"), values = c("#a0522d", "#E18942")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("商业智利-美国",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) +
guides(col = guide_legend(nrow = 2))
g8

g9 <- ggplot() +
geom_line(aes(y = exportsceu, x = year, colour = "exportsceu"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = importsceu, x = year, colour = "importsceu"), size=1.5, data = data, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
scale_y_continuous(breaks=seq(0,20000,5000)) +
expand_limits(y=c(5000,20000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("出口的产品", "进口产品"), values = c("#556b2f", "#2f556b")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("商业智利-欧盟",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) +
guides(col = guide_legend(nrow = 2))
g9

g10 <- ggplot() +
geom_line(aes(y = bccc, x = year, colour = "bccc"), size=1.5, data = data2, stat="identity") +
geom_line(aes(y = bccw, x = year, colour = "bccw"), size=1.5, data = data2, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("淨出口中国的产品", "淨出口人间的产品"), values = c("#4169e1", "#FF43A4")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("淨出口中国和人间",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) + guides(col = guide_legend(nrow = 2))
g10

g11 <- ggplot() +
geom_line(aes(y = bccusa, x = year, colour = "bccusa"), size=1.5, data = data2, stat="identity") +
geom_line(aes(y = bccw, x = year, colour = "bccw"), size=1.5, data = data2, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) + scale_y_continuous(breaks=seq(-10000,25000,5000)) +
expand_limits(y=c(-10000,25000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("淨出口美国的产品", "淨出口人间的产品"), values = c("#d68a59", "#FF43A4")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("淨出口美国和人间",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) + guides(col = guide_legend(nrow = 2))
g11

g12 <- ggplot() +
geom_line(aes(y = bcceu, x = year, colour = "bcceu"), size=1.5, data = data2, stat="identity") +
geom_line(aes(y = bccw, x = year, colour = "bccw"), size=1.5, data = data2, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("淨出口人间的产品", "淨出口欧盟的产品"), values = c("#FF43A4", "#556b2f"), guide = guide_legend(reverse=TRUE)) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("淨出口欧盟和人间",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) +
guides(col = guide_legend(nrow = 2))
g12

g13 <- ggplot() +
geom_line(aes(y = exportscc, x = year, colour = "exportscc"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = exportscusa, x = year, colour = "exportscusa"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = exportsceu, x = year, colour = "exportsceu"), size=1.5, data = data, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) + scale_y_continuous(breaks=seq(0,20000,5000)) + expand_limits(y=c(5000,20000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("中国(第一贸易合作伙伴)出口智利的产品", "美国(第二贸易合作伙伴)出口智利的产品", "欧盟(第三贸易合作伙伴)出口智利的产品"), values = c("#4169e1", "#d68a59","#556b2f")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("出口中国,美国和欧盟的产品",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) +
guides(col = guide_legend(nrow = 3))
g13

g14 <- ggplot() +
geom_line(aes(y = importscc, x = year, colour = "importscc"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = importscusa, x = year, colour = "importscusa"), size=1.5, data = data, stat="identity") +
geom_line(aes(y = importsceu, x = year, colour = "importsceu"), size=1.5, data = data, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
scale_y_continuous(breaks=seq(4000,20000,4000)) +
expand_limits(y=c(4000,20000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("中国(第一贸易合作伙伴)进口智利的产品", "美国(第二贸易合作伙伴)进口智利的产品", "欧盟(第三贸易合作伙伴)进口智利的产品"), values = c("#4169e1", "#d68a59","#556b2f")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("从中国,美国和欧盟进口产品",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) +
guides(col = guide_legend(nrow = 3))
g14

g15 <- ggplot() +
geom_line(aes(y = bccc, x = year, colour = "bccc"), size=1.5, data = data2, stat="identity") +
geom_line(aes(y = bccusa, x = year, colour = "bccusa"), size=1.5, data = data2, stat="identity") +
geom_line(aes(y = bcceu, x = year, colour = "bcceu"), size=1.5, data = data2, stat="identity") +
xlab("年") + ylab("百万美元") +
scale_x_continuous(breaks=seq(2000,2015,3)) +
scale_y_continuous(breaks=seq(-10000,15000,5000)) +
expand_limits(y=c(-10000,15000)) +
theme(panel.background = element_rect(fill="white"), panel.grid = element_line(colour="white")) +
scale_color_manual(labels = c("中国(第一贸易合作伙伴)淨出口智利的产品", "美国(第二贸易合作伙伴)淨出口智利的产品", "欧盟(第三贸易合作伙伴)淨出口智利的产品"), values = c("#4169e1", "#d68a59","#556b2f")) +
theme(legend.position="bottom", legend.direction="horizontal", legend.title = element_blank(), axis.line.x = element_line(size=1.0), axis.line.y = element_line(size=1.0)) +
ggtitle("淨出口中国,美国和欧盟进口产品",
subtitle = "消息灵通人士: 智利海关总署, 智利中央银行 & 商務處智利中國") +
theme(plot.title=element_text(size=20, family="AdobeHeitiStd-Regular"), text=element_text(size=18, family="AdobeHeitiStd-Regular")) +
guides(col = guide_legend(nrow = 3))
g15

转自: http://pacha.hk/ggplot2_chinese.html

Creating beautiful charts in chinese with ggplot2的更多相关文章

  1. R绘图 第九篇:绘制散点图和气泡图(ggplot2)

    绘制散点图(scatterplots)使用geom_point()函数,气泡图(bubblechart)也是一个散点图,只不过点的大小由一个变量(size)来控制.散点图潜在的最大问题是过度绘图:当一 ...

  2. Python框架、库以及软件资源汇总

    转自:http://developer.51cto.com/art/201507/483510.htm 很多来自世界各地的程序员不求回报的写代码为别人造轮子.贡献代码.开发框架.开放源代码使得分散在世 ...

  3. Awesome Python

    Awesome Python  A curated list of awesome Python frameworks, libraries, software and resources. Insp ...

  4. Machine and Deep Learning with Python

    Machine and Deep Learning with Python Education Tutorials and courses Supervised learning superstiti ...

  5. Python开源框架、库、软件和资源大集合

    A curated list of awesome Python frameworks, libraries, software and resources. Inspired by awesome- ...

  6. 【python】Python框架、库和软件资源大全

    很多来自世界各地的程序员不求回报的写代码为别人造轮子.贡献代码.开发框架.开放源代码使得分散在世界各地的程序员们都能够贡献他们的代码与创新. Python就是这样一门受到全世界各地开源社区支持的语言. ...

  7. Python 库汇总英文版

    Awesome Python  A curated list of awesome Python frameworks, libraries, software and resources. Insp ...

  8. Python框架、库和软件资源大全(整理篇)

    有少量修改,请访问原始链接.PythonWIn的exe安装包;http://www.lfd.uci.edu/~gohlke/pythonlibs/ 原文链接:codecloud.net/python- ...

  9. wesome-android

    awesome-android Introduction android libs from github System requirements Android Notice If the lib ...

随机推荐

  1. 关于block使用的几点注意事项

    1.在使用block前需要对block指针做判空处理. 不判空直接使用,一旦指针为空直接产生崩溃. if (!self.isOnlyNet) { if (succBlock == NULL) { // ...

  2. 跟着刚哥梳理java知识点——面向对象(八)

    面向对象的核心概念:类和对象. 类:对一类事物描述,是抽象的.概念上的定义. 对象:实际存在的该类事物的每个个体,因而也成为实例(Instance). Java类及类的成员:属性(成员变量Field) ...

  3. Java中常用来处理时间的三个类:Date、Calendar、SimpleDateFormate,以及Java中的单例设计模式:懒汉式、饿汉式以及静态内部类式

    (一)java.util.Date类 1.该类有一个long类型的属性:用来存放时间,是用毫秒数的形式表示,开始的日期是从1970年1月1号 00:00:00.    2.该类的很多方法都已经过时,不 ...

  4. cocos2d-x - C++/Lua交互

    使用tolua++将自定义的C++类嵌入,让lua脚本使用 一般过程: 自定义类 -> 使用tolua++工具编译到LuaCoco2d.cpp中 -> lua调用 步骤一:自定义一个C++ ...

  5. AngularJS创建新指令directive参数说明

    var myapp = angular.module('myapp', []); myapp.directive('worldname', function() { return { template ...

  6. CF #271 F Ant colony 树

    题目链接:http://codeforces.com/contest/474/problem/F 一个数组,每一次询问一个区间中有多少个数字可以整除其他所有区间内的数字. 能够整除其他所有数字的数一定 ...

  7. xLua中导出Dotween

    前言 在xlua的lua脚本中使用dotween,官方的文档中有提到可以导出,但未介绍详细的步骤,相信比较多的朋友有需要,刚好项目中也在使用xlua和dotween,所以做个笔记. 基础知识: xLu ...

  8. 【2017-04-25】winform公共控件、菜单和工具栏、Tab和无边框窗体制作

    一.公共控件 1. Button   按钮 + 布局 - AutoSize   按钮尺寸自动适应里面内容的长度 - Location    位置 - Margin       控件与控件外边距 - S ...

  9. 懵懂oracle之存储过程

    作为一个oracle界和厨师界的生手,笔者想给大家分享讨论下存储过程的知识,因为在我接触的通信行业中,存储过程的使用还是占据了一小块的地位. 存储过程是什么?不得不拿下百度词条的解释来:"存 ...

  10. 用Pyton玩转数据练习题---第二周

    找前5个默尼森数.P是素数且M也是素数,并且满足等式M=2**P-1,则称M为默尼森数.例如,P=5,M=2**P-1=31,5和31都是素数,因此31是默尼森数. # coding:utf-8 im ...