diff --git a/timeseriesviewer/mapvisualization.py b/timeseriesviewer/mapvisualization.py
index 94a3f5a4f73878a8971a474149da3be382571e7d..1f6c9c3b0e84d1c1cc1ed7a29ba8e2a616710834 100644
--- a/timeseriesviewer/mapvisualization.py
+++ b/timeseriesviewer/mapvisualization.py
@@ -63,6 +63,7 @@ class MapViewUI(QFrame, loadUI('mapviewdefinition.ui')):
 
         self.btnToggleCrosshair.setDefaultAction(self.actionToggleCrosshairVisibility)
         self.btnToggleMapViewVisibility.setDefaultAction(self.actionToggleMapViewHidden)
+        self.btnSetVectorStyle.setDefaultAction(self.actionSetVectorStyle)
 
     def connectActionWithGroupBox(self,action, groupBox):
         assert isinstance(action, QAction)
@@ -114,11 +115,11 @@ class MapView(QObject):
 
     sigShowProfiles = pyqtSignal(SpatialPoint, MapCanvas, str)
 
-    def __init__(self, mapViewCollection, name='Map View', recommended_bands=None, parent=None):
+    def __init__(self, mapViewCollectionDock, name='Map View', recommended_bands=None, parent=None):
         super(MapView, self).__init__()
-        assert isinstance(mapViewCollection, MapViewCollectionDock)
+        assert isinstance(mapViewCollectionDock, MapViewCollectionDock)
 
-        self.ui = MapViewUI(mapViewCollection.stackedWidget)
+        self.ui = MapViewUI(mapViewCollectionDock.stackedWidget)
         self.ui.show()
         self.ui.cbQgsVectorLayer.setFilters(QgsMapLayerProxyModel.VectorLayer)
         self.ui.cbQgsVectorLayer.layerChanged.connect(self.setVectorLayer)
@@ -130,7 +131,7 @@ class MapView(QObject):
                 crosshairStyle=self.mCrosshairStyle))
         )
 
-        self.mapViewCollection = mapViewCollection
+        self.mapViewCollection = mapViewCollectionDock
         self.mSensorViews = collections.OrderedDict()
 
         self.mVectorLayer = None
@@ -149,6 +150,7 @@ class MapView(QObject):
         self.ui.actionToggleVectorVisibility.setChecked(False)
         self.ui.actionToggleRasterVisibility.setChecked(True)
 
+        self.ui.actionSetVectorStyle.triggered.connect(self.setVectorLayerStyle)
 
         for sensor in self.mapViewCollection.TS.Sensors:
             self.addSensor(sensor)
@@ -183,13 +185,23 @@ class MapView(QObject):
             m.extend(sensorView.mapCanvases())
         return m
 
+
+
+
+    def setVectorLayerStyle(self, *args):
+        if isinstance(self.mVectorLayer, QgsVectorLayer):
+            d = QgsRendererPropertiesDialog(self.mVectorLayer, QgsStyle.defaultStyle())
+            d.exec_()
+
+
     def vectorLayerRenderer(self):
         if isinstance(self.mVectorLayer, QgsVectorLayer):
-            return self.mVectorLayer.rendererV2()
+            return self.mVectorLayer.renderer()
         return None
 
+
     def setVectorLayerRenderer(self, renderer):
-        if isinstance(renderer, QgsFeatureRendererV2) and \
+        if isinstance(renderer, QgsFeatureRenderer) and \
             isinstance(self.mVectorLayer, QgsVectorLayer):
             self.mVectorLayer.setRendererV2(renderer)
 
@@ -440,9 +452,9 @@ class MapViewSensorSettings(QObject):
         self.ceAlgs["Clip to MinMax"] = QgsContrastEnhancement.ClipToMinimumMaximum
 
         self.colorRampType = collections.OrderedDict()
-        self.colorRampType['Interpolated'] = QgsColorRampShader.INTERPOLATED
-        self.colorRampType['Discrete'] = QgsColorRampShader.DISCRETE
-        self.colorRampType['Exact'] = QgsColorRampShader.EXACT
+        self.colorRampType['Interpolated'] = QgsColorRampShader.Interpolated
+        self.colorRampType['Discrete'] = QgsColorRampShader.Discrete
+        self.colorRampType['Exact'] = QgsColorRampShader.Exact
 
         self.colorRampClassificationMode = collections.OrderedDict()
         self.colorRampClassificationMode['Continuous'] = 1
@@ -459,7 +471,7 @@ class MapViewSensorSettings(QObject):
         populateCombobox(self.ui.cbSingleBandMode, self.colorRampClassificationMode)
 
         #self.ui.cbSingleBandColorRamp.populate(QgsStyleV2.defaultStyle())
-        self.ui.btnSingleBandColorRamp.set
+        self.ui.btnSingleBandColorRamp.setColorRamp(QgsStyle.defaultStyle().colorRamp('Greens'))
 
 
         nb = self.sensor.nb
@@ -490,7 +502,7 @@ class MapViewSensorSettings(QObject):
         colorRamp = self.ui.btnSingleBandColorRamp.colorRamp()
         #fix: QGIS 3.0 constructor
         shaderFunc = QgsColorRampShader(bandStats[0].Min, bandStats[0].Max)
-        shaderFunc.setColorRampType(QgsColorRampShader.INTERPOLATED)
+        shaderFunc.setColorRampType(QgsColorRampShader.Interpolated)
         shaderFunc.setClip(True)
         nSteps = 5
         colorRampItems = []
@@ -684,7 +696,7 @@ class MapViewSensorSettings(QObject):
                 self.multiBandMinValues[i].setText(niceNumberString(vMin))
                 self.multiBandMaxValues[i].setText(niceNumberString(vMax))
 
-            idx = self.ceAlgs.values().index(ceRed.contrastEnhancementAlgorithm())
+            idx = list(self.ceAlgs.values()).index(ceRed.contrastEnhancementAlgorithm())
             ui.comboBoxContrastEnhancement.setCurrentIndex(idx)
 
 
@@ -703,7 +715,9 @@ class MapViewSensorSettings(QObject):
 
             shaderFunc = shader.rasterShaderFunction()
             #self.ui.cbSingleBandColorRampType.setCurrentIndex(shaderFunc.colorRampType())
-            self.ui.btnSingleBandColorRamp.setColorRamp(shaderFunc.colorRampType())
+            colorRamp = shaderFunc.sourceColorRamp()
+            if isinstance(colorRamp, QgsColorRamp):
+                self.ui.btnSingleBandColorRamp.setColorRamp(colorRamp)
             updated = True
 
         self.updateUi()
@@ -1795,55 +1809,32 @@ class MapViewCollectionDock(QgsDockWidget, loadUI('mapviewdock.ui')):
                 return None
 
 
-"""
-class MapViewDockUI(QgsDockWidget, loadUi('mapviewdock.ui')):
-    def __init__(self, parent=None):
-        super(MapViewDockUI, self).__init__(parent)
-        self.setupUi(self)
+if __name__ == '__main__':
+    from timeseriesviewer import utils
+    from timeseriesviewer.mapcanvas import MapCanvas
+    from example.Images import Img_2014_01_15_LC82270652014015LGN00_BOA
 
-        self.baseTitle = self.windowTitle()
-        self.btnApplyStyles.setDefaultAction(self.actionApplyStyles)
-
-        #self.dockLocationChanged.connect(self.adjustLayouts)
-
-
-
-    def toggleLayout(self, p):
-        newLayout = None
-        l = p.layout()
-        print('toggle layout {}'.format(str(p.objectName())))
-        tmp = QWidget()
-        tmp.setLayout(l)
-        sMax = p.maximumSize()
-        sMax.transpose()
-        sMin = p.minimumSize()
-        sMin.transpose()
-        p.setMaximumSize(sMax)
-        p.setMinimumSize(sMin)
-        if isinstance(l, QVBoxLayout):
-            newLayout = QHBoxLayout()
-        else:
-            newLayout = QVBoxLayout()
-        print(l, '->', newLayout)
 
-        while l.count() > 0:
-            item = l.itemAt(0)
-            l.removeItem(item)
+    from example import  exampleEvents
+    qgsApp = utils.initQgisApplication()
 
-            newLayout.addItem(item)
+    TS= TimeSeries()
+    dock  = MapViewCollectionDock()
+    dock.setTimeSeries(TS)
+    dock.show()
+    mv1 = dock.createMapView()
+    mv2 = dock.createMapView()
+    dock.setCurrentMapView(mv1)
+    assert dock.currentMapView() == mv1
+    dock.setCurrentMapView(mv2)
+    assert dock.currentMapView() == mv2
 
+    vl = QgsVectorLayer(exampleEvents, 'ogr')
+    QgsProject.instance().addMapLayer(vl)
+    #d = QgsRendererPropertiesDialog(vl, QgsStyle.defaultStyle())
+    #d.show()
 
-        p.setLayout(newLayout)
-        return newLayout
+    TS.addFiles(Img_2014_01_15_LC82270652014015LGN00_BOA)
 
-    def adjustLayouts(self, area):
-        return
-        lOld = self.scrollAreaMapsViewDockContent.layout()
-        if area in [Qt.LeftDockWidgetArea, Qt.RightDockWidgetArea] \
-            and isinstance(lOld, QVBoxLayout) or \
-        area in [Qt.TopDockWidgetArea, Qt.BottomDockWidgetArea] \
-                        and isinstance(lOld, QHBoxLayout):
 
-            #self.toogleLayout(self.scrollAreaMapsViewDockContent)
-            self.toggleLayout(self.BVButtonList)
-"""
\ No newline at end of file
+    qgsApp.exec_()
\ No newline at end of file
diff --git a/timeseriesviewer/ui/mapviewdefinition.ui b/timeseriesviewer/ui/mapviewdefinition.ui
index aefc551eb637814f26f840418510801e4b3cf943..b59e5ddee201e1e29ece1052d834fe9457ca49ef 100644
--- a/timeseriesviewer/ui/mapviewdefinition.ui
+++ b/timeseriesviewer/ui/mapviewdefinition.ui
@@ -38,7 +38,16 @@
    <property name="sizeConstraint">
     <enum>QLayout::SetMinAndMaxSize</enum>
    </property>
-   <property name="margin">
+   <property name="leftMargin">
+    <number>2</number>
+   </property>
+   <property name="topMargin">
+    <number>2</number>
+   </property>
+   <property name="rightMargin">
+    <number>2</number>
+   </property>
+   <property name="bottomMargin">
     <number>2</number>
    </property>
    <item>
@@ -89,7 +98,16 @@
        <property name="sizeConstraint">
         <enum>QLayout::SetFixedSize</enum>
        </property>
-       <property name="margin">
+       <property name="leftMargin">
+        <number>2</number>
+       </property>
+       <property name="topMargin">
+        <number>2</number>
+       </property>
+       <property name="rightMargin">
+        <number>2</number>
+       </property>
+       <property name="bottomMargin">
         <number>2</number>
        </property>
        <item>
@@ -104,7 +122,16 @@
           <property name="spacing">
            <number>2</number>
           </property>
-          <property name="margin">
+          <property name="leftMargin">
+           <number>0</number>
+          </property>
+          <property name="topMargin">
+           <number>0</number>
+          </property>
+          <property name="rightMargin">
+           <number>0</number>
+          </property>
+          <property name="bottomMargin">
            <number>0</number>
           </property>
          </layout>
@@ -235,23 +262,40 @@
            <enum>QLayout::SetMinAndMaxSize</enum>
           </property>
           <item>
-           <widget class="QgsMapLayerComboBox" name="cbQgsVectorLayer">
-            <property name="enabled">
-             <bool>false</bool>
-            </property>
-            <property name="sizePolicy">
-             <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
-              <horstretch>1</horstretch>
-              <verstretch>0</verstretch>
-             </sizepolicy>
+           <layout class="QHBoxLayout" name="horizontalLayout">
+            <property name="spacing">
+             <number>2</number>
             </property>
-            <property name="minimumSize">
-             <size>
-              <width>0</width>
-              <height>0</height>
-             </size>
+            <property name="topMargin">
+             <number>0</number>
             </property>
-           </widget>
+            <item>
+             <widget class="QgsMapLayerComboBox" name="cbQgsVectorLayer">
+              <property name="enabled">
+               <bool>false</bool>
+              </property>
+              <property name="sizePolicy">
+               <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+                <horstretch>1</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <property name="minimumSize">
+               <size>
+                <width>0</width>
+                <height>0</height>
+               </size>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="btnSetVectorStyle">
+              <property name="text">
+               <string>...</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
           </item>
           <item>
            <widget class="QLabel" name="label_3">
@@ -261,9 +305,9 @@
            </widget>
           </item>
          </layout>
-         <zorder>cbQgsVectorLayer</zorder>
          <zorder>collapseButton</zorder>
          <zorder>label_3</zorder>
+         <zorder>horizontalLayoutWidget</zorder>
         </widget>
        </item>
        <item>
@@ -293,7 +337,16 @@
           <property name="spacing">
            <number>0</number>
           </property>
-          <property name="margin">
+          <property name="leftMargin">
+           <number>0</number>
+          </property>
+          <property name="topMargin">
+           <number>0</number>
+          </property>
+          <property name="rightMargin">
+           <number>0</number>
+          </property>
+          <property name="bottomMargin">
            <number>0</number>
           </property>
           <item>
@@ -301,7 +354,16 @@
             <property name="sizeConstraint">
              <enum>QLayout::SetMinAndMaxSize</enum>
             </property>
-            <property name="margin">
+            <property name="leftMargin">
+             <number>9</number>
+            </property>
+            <property name="topMargin">
+             <number>9</number>
+            </property>
+            <property name="rightMargin">
+             <number>9</number>
+            </property>
+            <property name="bottomMargin">
              <number>9</number>
             </property>
            </layout>
@@ -405,6 +467,18 @@
     <string>toggleRasterVisibility</string>
    </property>
   </action>
+  <action name="actionSetVectorStyle">
+   <property name="icon">
+    <iconset resource="resources.qrc">
+     <normaloff>:/timeseriesviewer/icons/symbology.svg</normaloff>:/timeseriesviewer/icons/symbology.svg</iconset>
+   </property>
+   <property name="text">
+    <string>Set Vector Style</string>
+   </property>
+   <property name="toolTip">
+    <string>Sets the style of the selected vector layer.</string>
+   </property>
+  </action>
  </widget>
  <customwidgets>
   <customwidget>
diff --git a/timeseriesviewer/ui/mapviewrendersettings.ui b/timeseriesviewer/ui/mapviewrendersettings.ui
index a4aebaf83d5af92c7c987c51564a29135b18026b..a5f17f42924ae5cb396d7df179087dea47aa3537 100644
--- a/timeseriesviewer/ui/mapviewrendersettings.ui
+++ b/timeseriesviewer/ui/mapviewrendersettings.ui
@@ -1042,7 +1042,7 @@
         </widget>
        </item>
        <item row="5" column="1">
-        <widget class="QToolButton" name="btnSingleBandColorRamp">
+        <widget class="QgsColorRampButton" name="btnSingleBandColorRamp">
          <property name="text">
           <string>...</string>
          </property>
@@ -1209,6 +1209,13 @@ enhancement</string>
    </property>
   </action>
  </widget>
+ <customwidgets>
+  <customwidget>
+   <class>QgsColorRampButton</class>
+   <extends>QToolButton</extends>
+   <header>qgis.gui</header>
+  </customwidget>
+ </customwidgets>
  <resources>
   <include location="resources.qrc"/>
  </resources>