File:Workweeks-map.svg

頁面內容唔支援其他語言。
出自維基百科,自由嘅百科全書

原本檔案(SVG檔案,表面大細: 2,754 × 1,398 像素,檔案大細:1.06 MB)

摘要

描述
English: Countries of the world by their work-week.
 
Monday - Friday
 
Monday - Saturday
 
Sunday - Thursday
 
Sunday - Friday
 
Saturday - Thursday
 
Monday - Thursday and Saturday
 
Mixed
This map is based on https://en.wikipedia.org/w/index.php?title=Workweek_and_weekend&oldid=858023057
日期
來源 自己作品
作者 MartinThoma

Script to create the map:

#!/usr/bin/env python

# 3rd party modules
from lxml import etree
import mpu.pd


def main(filename="weekend.svg"):
    mon_fri = ['Dominican Republic', 'Lebanon', 'Serbia', 'Albania', 'Angola',
               'Argentina', 'Armenia', 'Azerbaijan', 'Austria', 'Australia',
               'Benin',
               'Belarus', 'Belgium', 'Brazil', 'Burundi', 'Bulgaria', 'Canada',
               'Cambodia', 'Cameroon', 'Chile', 'China', 'Croatia',
               'Costa Rica', 'Czech Republic', 'Denmark', 'Ethiopia',
               'Estonia', 'Finland', 'France', 'Gabon',
               'Gambia', 'Germany', 'Ghana', 'Greece', 'Hungary', 'Indonesia',
               'Ireland',
               'Italy', 'Côte d\'Ivoire', 'Japan', 'Kazakhstan', 'Kenya',
               'Lao People\'s Democratic Republic', 'Latvia', 'Lesotho',
               'Lithuania', 'Madagascar',
               'Malawi', 'Mali', 'Malta', 'Mauritania', 'Mongolia', 'Morocco',
               'Mozambique', 'Netherlands', 'New Zealand', 'Nigeria',
               'Norway',
               'Pakistan', 'Poland', 'Portugal', 'Romania', 'Russia', 'Rwanda',
               'Senegal',
               'Singapore', 'Slovakia', 'Spain', 'Sri Lanka',
               'South Africa', 'South Korea', 'Suriname', 'Swaziland',
               'Sweden', 'Switzerland',
               'Seychelles', 'Taiwan', 'Tanzania', 'Togo', 'Thailand',
               'Trinidad and Tobago', 'Tunisia', 'Turkey', 'Ukraine',
               'United Kingdom', 'United States',
               'Vietnam', 'Congo (Democratic Republic of the)', 'Zambia',
               'Zimbabwe']
    mon_sat = ['Equatorial Guinea', 'Hong Kong', 'Mexico', 'Philippines',
               'Uganda', 'India', 'Colombia']
    sun_thu = ['Afghanistan', 'Algeria', 'Bahrain', 'Egypt', 'Iraq', 'Israel',
               'Jordan', 'Kuwait', 'Libya', 'Maldives', 'Oman', 'Qatar',
               'Saudi Arabia', 'Sudan', 'Syria', 'Yemen',
               'United Arab Emirates', 'Bangladesh']
    sat_thu = ['Djibouti', 'Palestine', 'Iran']
    sun_fri = ['Nepal']
    mon_thu_sat = ['Brunei Darussalam']
    mixed = ['Malaysia']

    countries = mpu.pd.countries
    countries = countries.set_index('English short name (upper/lower case)')
    country2dict = countries.to_dict('index')

    legend = [(mon_fri, '#B8D8D8'),
              (mon_sat, 'orange'),
              (sun_thu, '#4F6367'),
              (sat_thu, 'red'),
              (sun_fri, 'tomato'),
              (mon_thu_sat, '#ff00ff'),
              (mixed, '#00ffff')]

    colors = {}
    for collection, color in legend:
        for country in collection:
            if country in country2dict:
                code = country2dict[country]['Alpha-2 code'].lower()
                colors[code] = color
            else:
                print('Could not find the Alpha-2 code for \'{}\' in mpu'
                      .format(country))

    tree = read_svg(filename)
    root = tree.getroot()
    for country_id in colors.keys():
        element = root.xpath('//*[@id="{}"]'.format(country_id))
        if len(element) == 1:
            element = element[0]
            element.set("style", 'fill: {};'.format(colors[country_id]))
            for el in element.getchildren():
                el.set("style", 'fill: {};'.format(colors[country_id]))
        else:
            print("Wrong length for id={}".format(country_id))
    write_svg(root)


def read_svg(filename):
    """
    Read an SVG file.

    Parameters
    ----------
    filename : str

    Returns
    -------
    tree : lxml.ElementTree
    """
    with open(filename, 'r') as f:
        tree = etree.parse(f)
    return tree


def write_svg(root, filename='weekend-auto.svg'):
    """
    Read an SVG file.

    Parameters
    ----------
    root : lxml.Element
    filename : str
    """
    etree.ElementTree(root).write(filename, pretty_print=True)


if __name__ == '__main__':
    main()

協議

我,呢份作品嘅作者,決定用以下許可發佈呢件作品:
Creative Commons CC-Zero This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

圖中顯示嘅係

4 9 2018

image/svg+xml

檔案歷史

撳個日期/時間去睇響嗰個時間出現過嘅檔案。

日期/時間縮圖尺寸用戶註解
現時2023年9月29號 (五) 12:14響2023年9月29號 (五) 12:14嘅縮圖版本2,754 × 1,398(1.06 MB)VyvagabaChanged the file to an svg file that is more easily editable, addressed some recent updates and missing data.
2023年9月29號 (五) 12:12響2023年9月29號 (五) 12:12嘅縮圖版本2,560 × 1,314(1.09 MB)VyvagabaReverted to version as of 19:41, 4 September 2018 (UTC)
2023年9月29號 (五) 12:07響2023年9月29號 (五) 12:07嘅縮圖版本2,754 × 1,398(1.06 MB)VyvagabaChanged the file to an svg file that is more easily editable, addressed some recent updates and missing data.
2018年9月4號 (二) 19:41響2018年9月4號 (二) 19:41嘅縮圖版本2,560 × 1,314(1.09 MB)MartinThomaUser created page with UploadWizard

以下嘅1版用到呢個檔:

全域檔案使用情況

下面嘅維基都用緊呢個檔案:

Metadata