1. Installez le package de la carte
BOKEH est une bibliothèque de visualisation interactive pour les navigateurs Web modernes. Il fournit une structure élégante et brève de graphiques courants et fournit une interaction hautes performances sur de grands ensembles de données ou des émetteurs. Bokeh peut aider tout le monde à vouloir être rapidement et facilement positif, tableau de bord et applications de données.
Avant de démarrer, le package d'installation
pip3 install bokeh
Anaconda peut être installé de la manière suivante et la fonction principale de bokeh est comprise.
A, la fonction de sortie du pont, la sortie_Notebook, la fonction_fileconda install bokeh
de la fonction de dessin de bokeh.plotting.figure
Appelant les graphiques () Graphics, rappelez-vous que l'initialisation graphique est p. La figure () comporte un certain nombre de paramètres tels que long (largeur), large (hauteur) et hache). Après cela, différents éléments graphiques peuvent être ajoutés dans une classe sur le tableau d'initialisation. Cette illustration est très proche de ggplot2.
C, source de données de table de données, bookeh.sampledata.periodic_table
3, code détaillé
Sorties:
from bokeh.io import output_notebook, showfrom bokeh.models import ColumnDataSourcefrom bokeh.plotting import figurefrom bokeh.sampledata.periodic_table import elementsfrom bokeh.transform import dodge, factor_cmapoutput_notebook()periods = ["I", "II", "III", "IV", "V", "VI", "VII"]groups = [str(x) for x in range(1, 19)]df = elements.copy()df["atomic mass"] = df["atomic mass"].astype(str)df["group"] = df["group"].astype(str)df["period"] = [periods[x-1] for x in df.period]df = df[df.group != "-"]df = df[df.symbol != "Lr"]df = df[df.symbol != "Lu"]cmap = { "alkali metal" : "#a6cee3", "alkaline earth metal" : "#1f78b4", "metal" : "#d93b43", "halogen" : "#999d9a", "metalloid" : "#e08d49", "noble gas" : "#eaeaea", "nonmetal" : "#f1d4Af", "transition metal" : "#599d7A",}source = ColumnDataSource(df)p = figure(plot_width=900, plot_height=500, title="Periodic Table (omitting LA and AC Series)", x_range=groups, y_range=list(reversed(periods)), toolbar_location=None, tools="hover")p.rect("group", "period", 0.95, 0.95, source=source, fill_alpha=0.6, legend_field="metal", color=factor_cmap('metal', palette=list(cmap.values()), factors=list(cmap.keys())))text_props = {"source": source, "text_align": "left", "text_baseline": "middle"}x = dodge("group", -0.4, range=p.x_range)r = p.text(x=x, y="period", text="symbol", **text_props)r.glyph.text_font_style="bold"r = p.text(x=x, y=dodge("period", 0.3, range=p.y_range), text="atomic number", **text_props)r.glyph.text_font_size="11px"r = p.text(x=x, y=dodge("period", -0.35, range=p.y_range), text="name", **text_props)r.glyph.text_font_size="7px"r = p.text(x=x, y=dodge("period", -0.2, range=p.y_range), text="atomic mass", **text_props)r.glyph.text_font_size="7px"p.text(x=["3", "3"], y=["VI", "VII"], text=["LA", "AC"], text_align="center", text_baseline="middle")p.hover.tooltips = [ ("Name", "@name"), ("Atomic number", "@{atomic number}"), ("Atomic mass", "@{atomic mass}"), ("Type", "@metal"), ("CPK color", "$color[hex, swatch]:CPK"), ("Electronic configuration", "@{electronic configuration}"),]p.outline_line_color = Nonep.grid.grid_line_color = Nonep.axis.axis_line_color = Nonep.axis.major_tick_line_color = Nonep.axis.major_label_standoff = 0p.legend.orientation = "horizontal"p.legend.location ="top_center"show(p)