当前pyecharts
版本为1.9.0
概述
faker
模块位于pyecharts
包顶级目录中,文件名为faker.py
。用于定义pyecharts
的内置数据集。
faker
模块按照Python常用的设计模式,把在全局范围内使用的变量定义在单一模块中的类中。
模块包含1个“私有”类_Faker
、2个变量:_Faker
类实例Faker
(注意是Faker
,此处未遵循Python常见命名规范)和POPULATION
。
Faker
变量
属性
绝大多数属性均为列表结构,可用作类别数据。
clothes = ["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]
drinks = ["可乐", "雪碧", "橙汁", "绿茶", "奶茶", "百威", "青岛"]
phones = ["小米", "三星", "华为", "苹果", "魅族", "VIVO", "OPPO"]
fruits = ["草莓", "芒果", "葡萄", "雪梨", "西瓜", "柠檬", "车厘子"]
animal = ["河马", "蟒蛇", "老虎", "大象", "兔子", "熊猫", "狮子"]
cars = ["宝马", "法拉利", "奔驰", "奥迪", "大众", "丰田", "特斯拉"]
dogs = ["哈士奇", "萨摩耶", "泰迪", "金毛", "牧羊犬", "吉娃娃", "柯基"]
week = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]
week_en = "Saturday Friday Thursday Wednesday Tuesday Monday Sunday".split()
clock = (
"12a 1a 2a 3a 4a 5a 6a 7a 8a 9a 10a 11a 12p "
"1p 2p 3p 4p 5p 6p 7p 8p 9p 10p 11p".split()
)
days_attrs = ["{}天".format(i) for i in range(30)]
days_values = [random.randint(1, 30) for _ in range(30)]
months = ["{}月".format(i) for i in range(1, 13)]
provinces = ["广东", "北京", "上海", "江西", "湖南", "浙江", "江苏"]
guangdong_city = ["汕头市", "汕尾市", "揭阳市", "阳江市", "肇庆市", "广州市", "惠州市"]
country = [
"China",
"Canada",
"Brazil",
"Russia",
"United States",
"Africa",
"Germany",
]
visual_color = [
"#313695",
"#4575b4",
"#74add1",
"#abd9e9",
"#e0f3f8",
"#ffffbf",
"#fee090",
"#fdae61",
"#f46d43",
"#d73027",
"#a50026",
]
方法
choose
:随机选择类别数据集
def choose(self) -> list:
return random.choice(
[
self.clothes,
self.drinks,
self.phones,
self.fruits,
self.animal,
self.dogs,
self.week,
]
)
values
:随机生成7个数字(20-150)构成的列表
@staticmethod
def values(start: int = 20, end: int = 150) -> list:
return [random.randint(start, end) for _ in range(7)]
rand_color
:随机从列表中生成1个颜色值
@staticmethod
def rand_color() -> str:
return random.choice(
[
"#c23531",
"#2f4554",
"#61a0a8",
"#d48265",
"#749f83",
"#ca8622",
"#bda29a",
"#6e7074",
"#546570",
"#c4ccd3",
"#f05b72",
"#444693",
"#726930",
"#b2d235",
"#6d8346",
"#ac6767",
"#1d953f",
"#6950a1",
]
)
img_path
:为路径添加前缀,默认为images
@staticmethod
def img_path(path: str, prefix: str = "images") -> str:
return os.path.join(prefix, path)
POPULATION
变量:2019世界人口数据集
POPULATION
为2019年世界人口数据集,结构为二层嵌套列表,结构如下,第一列为国家或地区,第二列为人口数量。
POPULATION = [
["Country (or dependency)", "Population\n(2019)"],
["China", 1420062022],
......
]
演示
from pyecharts.faker import POPULATION,Faker
print(Faker.week)
print(
Faker.choose(),
Faker.values(),
Faker.rand_color()
)
输出为:
['周一', '周二', '周三', '周四', '周五', '周六', '周日']
['可乐', '雪碧', '橙汁', '绿茶', '奶茶', '百威', '青岛'] [25, 50, 23, 120, 120, 30, 124] #bda29a