diff --git a/Source/Processors/Editors/VisualizerEditor.cpp b/Source/Processors/Editors/VisualizerEditor.cpp
index 4ae16d93a285fad2ba61b2627773a74e8035eb6d..ff432a7bfd4031996702babf17eb177bf18be598 100755
--- a/Source/Processors/Editors/VisualizerEditor.cpp
+++ b/Source/Processors/Editors/VisualizerEditor.cpp
@@ -170,6 +170,7 @@ void VisualizerEditor::buttonEvent(Button* button)
         {
 
             canvas = createNewCanvas();
+            canvas->update();
 
             if (isPlaying)
                 canvas->beginAnimation();
diff --git a/Source/Processors/Visualization/LfpDisplayCanvas.cpp b/Source/Processors/Visualization/LfpDisplayCanvas.cpp
index a1ea23d11ba9b69ee99289e1897ee524d2094895..1235c8e1316e0a7fef9710368ee9c38b1b6d8b2d 100755
--- a/Source/Processors/Visualization/LfpDisplayCanvas.cpp
+++ b/Source/Processors/Visualization/LfpDisplayCanvas.cpp
@@ -161,6 +161,18 @@ void LfpDisplayCanvas::update()
 
     lfpDisplay->setNumChannels(nChans);
 
+    // update channel names
+	for (int i = 0; i < processor->getNumInputs(); i++)
+    {
+
+    	String chName = processor->channels[i]->getName();
+
+    	//std::cout << chName << std::endl;
+
+    	lfpDisplay->channelInfo[i]->setName(chName);
+
+    }
+
     lfpDisplay->setBounds(0,0,getWidth()-scrollBarThickness*2, lfpDisplay->getTotalHeight());
 
 }
@@ -756,6 +768,10 @@ LfpChannelDisplay::LfpChannelDisplay(LfpDisplayCanvas* c, int channelNumber) :
     canvas(c), isSelected(false), chan(channelNumber), channelHeight(40), channelOverlap(300), range(1000.0f)
 {
 
+
+	name = String(channelNumber+1); // default is to make the channelNumber the name
+
+
     channelHeightFloat = (float) channelHeight;
 
     channelFont = Font("Default", channelHeight*0.6, Font::plain);
@@ -927,6 +943,11 @@ int LfpChannelDisplay::getChannelOverlap()
     return channelOverlap;
 }
 
+void LfpChannelDisplay::setName(String name_)
+{
+	name = name_;
+}
+
 // -------------------------------
 
 LfpChannelDisplayInfo::LfpChannelDisplayInfo(LfpDisplayCanvas* canvas_, int ch)
@@ -938,14 +959,16 @@ LfpChannelDisplayInfo::LfpChannelDisplayInfo(LfpDisplayCanvas* canvas_, int ch)
 void LfpChannelDisplayInfo::paint(Graphics& g)
 {
 
+
+
     int center = getHeight()/2;
 
     g.setColour(lineColour);
 
     g.setFont(channelFont);
-    g.setFont(channelHeightFloat*0.6);
+    g.setFont(channelHeightFloat*0.3);
 
-    g.drawText(String(chan+1), 10, center-channelHeight/2, 200, channelHeight, Justification::left, false);
+    g.drawText(name, 10, center-channelHeight/2, 200, channelHeight, Justification::left, false);
 
 }
 
diff --git a/Source/Processors/Visualization/LfpDisplayCanvas.h b/Source/Processors/Visualization/LfpDisplayCanvas.h
index cfbe69b13138e74fd908861f473bebf49c5e3d12..298473735b79c8210fe9536b1017e5c5e3eaa40c 100755
--- a/Source/Processors/Visualization/LfpDisplayCanvas.h
+++ b/Source/Processors/Visualization/LfpDisplayCanvas.h
@@ -180,6 +180,9 @@ public:
     void setChannelHeight(int r);
     int getChannelHeight();
 
+    Array<LfpChannelDisplay*> channels;
+    Array<LfpChannelDisplayInfo*> channelInfo;
+
 private:
     int numChans;
 
@@ -188,8 +191,6 @@ private:
     LfpDisplayCanvas* canvas;
     Viewport* viewport;
 
-    Array<LfpChannelDisplay*> channels;
-    Array<LfpChannelDisplayInfo*> channelInfo;
     Array<Colour> channelColours;
 
     float range;
@@ -207,6 +208,8 @@ public:
     void select();
     void deselect();
 
+    void setName(String);
+
     void setColour(Colour c);
 
     void setChannelHeight(int);
@@ -228,6 +231,8 @@ protected:
 
     int chan;
 
+    String name;
+
     Font channelFont;
 
     Colour lineColour;