コード例 #1
0
ファイル: test_webviz.py プロジェクト: oysteoh/webviz
    def test_write_banner(self):
        self.submenu.add_page(self.page)
        (_, testbanner) = tempfile.mkstemp(suffix='.jpg')
        self.webviz = Webviz('test portal',
                             banner_image=testbanner,
                             theme='minimal')
        self.webviz.add(self.submenu)

        folder = tempfile.mkdtemp()
        self.webviz.write_html(folder, overwrite=True)

        absolute_banner_filename = os.path.join(folder,
                                                self.webviz.banner_filename)
        self.assertTrue(os.path.isfile(absolute_banner_filename))

        shutil.rmtree(folder)
コード例 #2
0
    def test_special_character_title(self):

        web = Webviz("øæåõ", theme='minimal')

        web.add(Page("øæå~"))
        web.add(Page("øæå~ÆÆÆAAAÅÅÅ"))

        folder = tempfile.mkdtemp()
        web.write_html(folder, overwrite=True, display=False)
        shutil.rmtree(folder)
コード例 #3
0
 def test_js_dump(self):
     self.json_content[self.key] = self.value
     web = Webviz('title', theme='minimal')
     page = Page('pagetitle')
     page.add_content(self.json_content)
     web.add(page)
     tempdir = tempfile.mkdtemp()
     web.write_html(tempdir, overwrite=True, display=False)
コード例 #4
0
 def test_js_dump(self):
     self.json_content[self.key] = self.value
     web = Webviz('title', theme='minimal')
     page = Page('pagetitle')
     page.add_content(self.json_content)
     web.add(page)
     tempdir = tempfile.mkdtemp()
     web.write_html(tempdir, overwrite=True, display=False)
     js_deps = self.json_content.get_js_dep()
     path.isfile(path.join(tempdir, 'resources', 'js', js_deps[0].name))
コード例 #5
0
ファイル: tutorial.py プロジェクト: nathangeology/webviz
from webviz import Webviz, Page, SubMenu

web = Webviz('Main title', theme='default')

ex1 = Page('Example 1')
ex2 = Page('Example 2')
submenu1 = SubMenu('Menu 1')
submenu2 = SubMenu('Menu 2')

submenu1.add_page(ex1)
submenu2.add_page(ex2)

web.add(submenu1)
web.add(submenu2)

page3 = Page('Example 3')
web.add(page3)

web.write_html("./webviz_tutorial", overwrite=True, display=False)
コード例 #6
0
ファイル: map_example.py プロジェクト: kjetilbjorke/webviz
from webviz import Webviz, Page
from webviz.page_elements import Map
import pandas as pd
import numpy as np
from pandas.compat import StringIO

web = Webviz('Map Example')

data = pd.read_csv(StringIO("""
i,j,k,x0,y0,x1,y1,x2,y2,x3,y3,value,FLOWI+,FLOWJ+
0,0,0,0,0,1,0,1,1,0,1,1,0.005,0.0025
1,0,0,1,0,2,0,2,1,1,1,0,0.002,0.0045
0,1,0,0,1,1,1,1,2,0,2,4,0.001,0.0025
1,1,0,1,1,2,1,2,2,1,2,2,0.004,0.0035
"""))

data.set_index(['i', 'j', 'k'], inplace=True)

web.index.add_content(Map(data))
web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #7
0
ファイル: pie_chart_example.py プロジェクト: oysteoh/webviz
from webviz import Webviz, Page
import pandas as pd
from webviz.page_elements import PieChart

web = Webviz('Pie Chart Example')

page = Page('Pie Chart')

frame = pd.DataFrame([[19, 26, 55], [33, 14, 55]],
                     columns=['sector 1', 'sector 2', 'sector 3'])

page.add_content(PieChart(frame))
web.add(page)
web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #8
0
from webviz import Webviz, Page
from webviz.page_elements import Histogram
import pandas as pd
import numpy as np

web = Webviz('Histogram Example')

page = Page('Histogram')

normal = [x for x in np.random.normal(size=1000).tolist()]
poisson = [x for x in np.random.poisson(10, 1000).tolist()]
triangular = [x for x in np.random.triangular(0, 10, 20, 1000).tolist()]

data = pd.DataFrame({
    'normal': normal,
    'poisson': poisson,
    'triangular': triangular
})

page.add_content(Histogram(data, nbinsx=20))
web.add(page)
web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #9
0
ファイル: test_webviz.py プロジェクト: oysteoh/webviz
class TestWebviz(unittest.TestCase):
    def setUp(self):
        self.page = Page('test page')
        self.submenu = SubMenu('test page')
        self.webviz = Webviz('test portal', theme='minimal')

    def test_non_theme(self):
        with self.assertRaises(ValueError):
            Webviz(title='bomb', theme=3.14)

    @patch('webviz._webviz.webbrowser')
    def test_display(self, webbrowser_mock):
        folder = tempfile.mkdtemp()
        self.webviz.write_html(folder, True, True)
        shutil.rmtree(folder)
        webbrowser_mock.open_new_tab.assert_called_once()

    def test_add_non_page(self):
        with self.assertRaises(ValueError):
            self.webviz.add('not a page or SubMenu')

    def test_add_page(self):
        self.webviz.add(self.page)
        self.assertIn(self.page, self.webviz.menu)

    def test_add_submenu(self):
        self.submenu.add_page(self.page)
        self.webviz.add(self.submenu)
        self.assertIn(self.submenu, self.webviz.menu)
        self.assertIn(self.page, self.webviz.pages)

    def test_render(self):
        self.submenu.add_page(self.page)
        self.webviz.add(self.submenu)

        folder = tempfile.mkdtemp()
        self.webviz.write_html(folder, overwrite=True)
        shutil.rmtree(folder)

    def test_overwrite(self):
        self.submenu.add_page(self.page)
        self.webviz.add(self.submenu)

        folder = tempfile.mkdtemp()
        self.webviz.write_html(folder, overwrite=True)

        with self.assertRaises(ValueError):
            self.webviz.write_html(folder, overwrite=False)

        self.webviz.write_html(folder, overwrite=True)

        shutil.rmtree(folder)

    def test_write_banner(self):
        self.submenu.add_page(self.page)
        (_, testbanner) = tempfile.mkstemp(suffix='.jpg')
        self.webviz = Webviz('test portal',
                             banner_image=testbanner,
                             theme='minimal')
        self.webviz.add(self.submenu)

        folder = tempfile.mkdtemp()
        self.webviz.write_html(folder, overwrite=True)

        absolute_banner_filename = os.path.join(folder,
                                                self.webviz.banner_filename)
        self.assertTrue(os.path.isfile(absolute_banner_filename))

        shutil.rmtree(folder)
コード例 #10
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Example of adding tornado plots to webviz project
before running, currently using:
source /project/res/komodo/testing/enable for webviz
"""
from __future__ import division, print_function, absolute_import
from fmu.tools.sensitivities import add_webviz_tornadoplots
from webviz import Webviz

html_foldername = "./webviz_example"
title = "Snorreberg"

web = Webviz(title, theme="equinor")
configpath = "../tests/data/sensitivities/config/"

# add different types of plots to webportal
add_webviz_tornadoplots(web,
                        configpath + "config_example_geovolume_ensemble.yaml")
add_webviz_tornadoplots(web, configpath + "config_example_geovolume.yaml")
add_webviz_tornadoplots(web, configpath + "config_example_eclipse.yaml")

# Finally, write html
web.write_html(html_foldername, overwrite=True, display=True)
コード例 #11
0
ファイル: test_webviz.py プロジェクト: oysteoh/webviz
 def setUp(self):
     self.page = Page('test page')
     self.submenu = SubMenu('test page')
     self.webviz = Webviz('test portal', theme='minimal')
コード例 #12
0
ファイル: icon_example.py プロジェクト: oysteoh/webviz
from webviz import Webviz, Page
from webviz_default_theme import default_theme
from six import iteritems

web = Webviz('Icon example', theme='default')

for name, _ in iteritems(default_theme.icons):
    web.add(Page(name, icon=name))

web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #13
0
from webviz import Webviz, Page
from webviz.page_elements import ScatterPlotMatrix
import pandas as pd

web = Webviz('Scatter Plot Matrix Example')

page = Page('Scatter Plot Matrix')

point1 = [10.6, 15, 13.4, 17]
point2 = [16, 5, 11, 9.7]
point3 = [51, 25.6, 51, 23]
point4 = [19, 75.1, 23, 49]
name = ['name1', 'name1', 'name2', 'name2']

points = pd.DataFrame({
    'point1': point1,
    'point2': point2,
    'point3': point3,
    'point4': point4,
    'name': name
})

page.add_content(ScatterPlotMatrix(points))
web.add(page)
web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #14
0
from webviz import Webviz, Page
from webviz.page_elements import TornadoPlot
import pandas as pd

web = Webviz('Tornado Plot Example')

page = Page('Tornado Plot')

high = [0.8, 1, 0.3, 0.4]

low = [0.5, -0.7, -.5, -0.1]

index = ['A', 'B', 'C', 'D']

bars = pd.DataFrame({'low': low, 'high': high}, index=index)

plot = TornadoPlot(bars)
plot.add_annotation(x=low[1], y=index[1], ay=0, ax=-20, text='label')
page.add_content(plot)
web.add(page)
web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #15
0
ファイル: banner_example.py プロジェクト: oysteoh/webviz
import sys
from webviz import Webviz

banner_image = sys.argv[1]  # e.g. 'logo.jpg'

web = Webviz('title',
             banner_title='My banner',
             banner_image=sys.argv[1],
             theme='minimal',
             copyright_notice='My copyright notice')

web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #16
0
ファイル: submenu_example.py プロジェクト: oysteoh/webviz
from webviz import Webviz, Page, SubMenu

web = Webviz('Title', theme='default')

page = Page('Page')
menu = SubMenu('Menu')

menu.add_page(page)

web.add(menu)

web.write_html("./webviz_example", overwrite=True, display=False)
コード例 #17
0
from webviz import Webviz, Page, SubMenu, Markdown

web = Webviz('Main title', theme='minimal')

ex1 = Page('Example 1')
ex2 = Page('Example 2')
ex3 = Page('Markdown example')

some_content = (r"""

# Markdown support
***

> __You can pass markdown wihin a triple-quotes__<br>
> _Also known as multiline comments_

|First Header  | Second Header  | Third Header |
|:-------------|:-------------: | ------------:|
|Content Cell  | `Content Cell` | Content      |
|Content Cell  | Content Cell   | Content      |

---

    #!python
    def hello():
        print('Hello World')
---
If you want to use math formulas, you have several different options. You can
use double dollar signs:

```
コード例 #18
0
ファイル: test_webviz.py プロジェクト: oysteoh/webviz
 def test_non_theme(self):
     with self.assertRaises(ValueError):
         Webviz(title='bomb', theme=3.14)