Typeface, linetype and color setting of matplotlib drawing

matplotlib is a common drawing library, which supports python and Jupyter Notebook, as well as the latest jupyterab environment. This paper introduces the font setting method of matplotlib and the setting of drawing linetype, symbol and color.

1. Chinese font

To find Chinese fonts under Linux, use the command: FC list: lang = zh

The drawing function reference is as follows:

def draw(dfx):
    myfont = FontProperties(fname='/usr/share/fonts/truetype/arphic/ukai.ttc',size=24)  
    fig=plt.figure(figsize=(48,12), dpi=250)
    p1=fig.add_subplot(1,1,1)
    p1.set_xticklabels(dfx['date'], rotation=15, fontsize='small',fontproperties=myfont)

    #Display data.
    p1.plot(dfx['date'],dfx['Newly diagnosed'],color='red',linewidth=3,label='Newly diagnosed')
    p1.bar(dfx['date'],dfx['New death'],color='black',label='New death')

    plt.title(u'Number of new cases in China(NCP)-2020 Year 01-02 month',fontproperties=myfont) 
    plt.legend(loc=0,ncol=1,prop=myfont)
    plt.grid(True)
    plt.gcf().autofmt_xdate()
    plt.show()

The main font settings needed are the title, legend, and labels on the axis. First, create a myfont object, and then put it in the title, legend, set xticklabel. Note that the parameter of legend is prop.

2. Graphic drawing

Here is a simple example of using matplotlib to draw, using color, line width, line type symbols and other styles.

import matplotlib.pyplot as plt
from matplotlib.font_manager import *  

x= range(100)
y= [i**2 for i in x]

plt.subplots(1, 1)
plt.plot(x, y, linewidth = '1', label = 'Example', color='coral', linestyle=':', marker='|')
plt.legend(loc='upper left')
plt.show()

3. Linetype table

linestyle optional parameters:

  • '-'      solid line style
  • '--'      dashed line style
  • '-.'      dash-dot line style
  • ':'      dotted line style

4. Symbol table

marker optional parameters:

  • '.'      point marker
  • ','      pixel marker
  • 'o'      circle marker
  • 'v'      triangle_down marker
  • '^'      triangle_up marker
  • '<'      triangle_left marker
  • '>'      triangle_right marker
  • '1'      tri_down marker
  • '2'      tri_up marker
  • '3'      tri_left marker
  • '4'      tri_right marker
  • 's'      square marker
  • 'p'      pentagon marker
  • '*'      star marker
  • 'h'      hexagon1 marker
  • 'H'      hexagon2 marker
  • '+'      plus marker
  • 'x'      x marker
  • 'D'      diamond marker
  • 'd'      thin_diamond marker
  • '|'      vline marker
  • '_'      hline marker

5. Color table

color available colors:

cnames = {

'aliceblue':            '#F0F8FF',
'antiquewhite':        '#FAEBD7',
'aqua':                '#00FFFF',
'aquamarine':          '#7FFFD4',
'azure':                '#F0FFFF',
'beige':                '#F5F5DC',
'bisque':              '#FFE4C4',
'black':                '#000000',
'blanchedalmond':      '#FFEBCD',
'blue':                '#0000FF',
'blueviolet':          '#8A2BE2',
'brown':                '#A52A2A',
'burlywood':            '#DEB887',
'cadetblue':            '#5F9EA0',
'chartreuse':          '#7FFF00',
'chocolate':            '#D2691E',
'coral':                '#FF7F50',
'cornflowerblue':      '#6495ED',
'cornsilk':            '#FFF8DC',
'crimson':              '#DC143C',
'cyan':                '#00FFFF',
'darkblue':            '#00008B',
'darkcyan':            '#008B8B',
'darkgoldenrod':        '#B8860B',
'darkgray':            '#A9A9A9',
'darkgreen':            '#006400',
'darkkhaki':            '#BDB76B',
'darkmagenta':          '#8B008B',
'darkolivegreen':      '#556B2F',
'darkorange':          '#FF8C00',
'darkorchid':          '#9932CC',
'darkred':              '#8B0000',
'darksalmon':          '#E9967A',
'darkseagreen':        '#8FBC8F',
'darkslateblue':        '#483D8B',
'darkslategray':        '#2F4F4F',
'darkturquoise':        '#00CED1',
'darkviolet':          '#9400D3',
'deeppink':            '#FF1493',
'deepskyblue':          '#00BFFF',
'dimgray':              '#696969',
'dodgerblue':          '#1E90FF',
'firebrick':            '#B22222',
'floralwhite':          '#FFFAF0',
'forestgreen':          '#228B22',
'fuchsia':              '#FF00FF',
'gainsboro':            '#DCDCDC',
'ghostwhite':          '#F8F8FF',
'gold':                '#FFD700',
'goldenrod':            '#DAA520',
'gray':                '#808080',
'green':                '#008000',
'greenyellow':          '#ADFF2F',
'honeydew':            '#F0FFF0',
'hotpink':              '#FF69B4',
'indianred':            '#CD5C5C',
'indigo':              '#4B0082',
'ivory':                '#FFFFF0',
'khaki':                '#F0E68C',
'lavender':            '#E6E6FA',
'lavenderblush':        '#FFF0F5',
'lawngreen':            '#7CFC00',
'lemonchiffon':        '#FFFACD',
'lightblue':            '#ADD8E6',
'lightcoral':          '#F08080',
'lightcyan':            '#E0FFFF',
'lightgoldenrodyellow': '#FAFAD2',
'lightgreen':          '#90EE90',
'lightgray':            '#D3D3D3',
'lightpink':            '#FFB6C1',
'lightsalmon':          '#FFA07A',
'lightseagreen':        '#20B2AA',
'lightskyblue':        '#87CEFA',
'lightslategray':      '#778899',
'lightsteelblue':      '#B0C4DE',
'lightyellow':          '#FFFFE0',
'lime':                '#00FF00',
'limegreen':            '#32CD32',
'linen':                '#FAF0E6',
'magenta':              '#FF00FF',
'maroon':              '#800000',
'mediumaquamarine':    '#66CDAA',

'mediumblue':          '#0000CD',

'mediumorchid':        '#BA55D3',

'mediumpurple':        '#9370DB',

'mediumseagreen':      '#3CB371',

'mediumslateblue':      '#7B68EE',

'mediumspringgreen':    '#00FA9A',

'mediumturquoise':      '#48D1CC',

'mediumvioletred':      '#C71585',

'midnightblue':        '#191970',

'mintcream':            '#F5FFFA',

'mistyrose':            '#FFE4E1',

'moccasin':            '#FFE4B5',

'navajowhite':          '#FFDEAD',

'navy':                '#000080',

'oldlace':              '#FDF5E6',

'olive':                '#808000',

'olivedrab':            '#6B8E23',

'orange':              '#FFA500',

'orangered':            '#FF4500',

'orchid':              '#DA70D6',

'palegoldenrod':        '#EEE8AA',

'palegreen':            '#98FB98',

'paleturquoise':        '#AFEEEE',

'palevioletred':        '#DB7093',

'papayawhip':          '#FFEFD5',

'peachpuff':            '#FFDAB9',

'peru':                '#CD853F',

'pink':                '#FFC0CB',

'plum':                '#DDA0DD',

'powderblue':          '#B0E0E6',

'purple':              '#800080',

'red':                  '#FF0000',

'rosybrown':            '#BC8F8F',

'royalblue':            '#4169E1',

'saddlebrown':          '#8B4513',

'salmon':              '#FA8072',

'sandybrown':          '#FAA460',

'seagreen':            '#2E8B57',

'seashell':            '#FFF5EE',

'sienna':              '#A0522D',

'silver':              '#C0C0C0',

'skyblue':              '#87CEEB',

'slateblue':            '#6A5ACD',

'slategray':            '#708090',

'snow':                '#FFFAFA',

'springgreen':          '#00FF7F',

'steelblue':            '#4682B4',

'tan':                  '#D2B48C',

'teal':                '#008080',

'thistle':              '#D8BFD8',

'tomato':              '#FF6347',

'turquoise':            '#40E0D0',

'violet':              '#EE82EE',

'wheat':                '#F5DEB3',

'white':                '#FFFFFF',

'whitesmoke':          '#F5F5F5',

'yellow':              '#FFFF00',

'yellowgreen':          '#9ACD32'}

Color samples are as follows:

In addition:

If the Seaborn extension is installed, all xkcd crowdsourced color names are included in the dictionary seaborn.xkcd_rgb. The method of use is as follows:

plt.plot([1,2], lw=4, c=seaborn.xkcd_rgb['baby poop green'])

All color tables are as follows:

 

 

Tags: Big Data Linux Python jupyter

Posted on Mon, 10 Feb 2020 10:19:06 -0500 by youneek