diff --git a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java
index aa5685657b2f48c0faab2ad774da316e25d94191..3ae6fc4a4932db803a6dd5567d6a606c02e64823 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java
@@ -62,7 +62,7 @@ public class ChartController extends BaseController
 		defaultFilterConfiguration.setFilterCategories(filterHelpersService.getFilterCategories());
 		defaultFilterConfiguration.setFilterTags(filterHelpersService.getFilterTags());
 
-		ChartSettings defaultChartSettings = ChartSettings.getDefault(charts.get(0).getID(), defaultFilterConfiguration);
+		ChartSettings defaultChartSettings = ChartSettings.getDefault(defaultFilterConfiguration);
 
 		model.addAttribute("chartSettings", defaultChartSettings);
 		model.addAttribute("charts", charts);
diff --git a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartSettings.java b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartSettings.java
index 16ed2f4f1da76b2d9476994d6fcbdbcfae2375ee..d4177402a7c2ac5b1edaca5e82c4fd1aa51dc4e7 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartSettings.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartSettings.java
@@ -10,23 +10,23 @@ public class ChartSettings
 	private ChartDisplayType displayType;
 	private ChartGroupType groupType;
 
-	private int chartID;
+	private Integer chartID;
 	@DateTimeFormat(pattern = "dd.MM.yyyy")
 	private DateTime startDate;
 	@DateTimeFormat(pattern = "dd.MM.yyyy")
 	private DateTime endDate;
 	private FilterConfiguration filterConfiguration;
 
-	public static ChartSettings getDefault(int chartID, FilterConfiguration filterConfiguration)
+	public static ChartSettings getDefault(FilterConfiguration filterConfiguration)
 	{
-		return new ChartSettings(ChartDisplayType.BAR, ChartGroupType.MONTH, chartID, DateTime.now().withDayOfMonth(1), DateTime.now().dayOfMonth().withMaximumValue(), filterConfiguration);
+		return new ChartSettings(ChartDisplayType.BAR, ChartGroupType.MONTH, null, DateTime.now().withDayOfMonth(1), DateTime.now().dayOfMonth().withMaximumValue(), filterConfiguration);
 	}
 
 	public ChartSettings()
 	{
 	}
 
-	public ChartSettings(ChartDisplayType displayType, ChartGroupType groupType, int chartID, DateTime startDate, DateTime endDate, FilterConfiguration filterConfiguration)
+	public ChartSettings(ChartDisplayType displayType, ChartGroupType groupType, Integer chartID, DateTime startDate, DateTime endDate, FilterConfiguration filterConfiguration)
 	{
 		this.displayType = displayType;
 		this.groupType = groupType;
@@ -96,6 +96,11 @@ public class ChartSettings
 		this.filterConfiguration = filterConfiguration;
 	}
 
+	public boolean isChartSelected()
+	{
+		return chartID != null;
+	}
+
 	@Override
 	public String toString()
 	{
diff --git a/src/main/resources/languages/base_de.properties b/src/main/resources/languages/base_de.properties
index cd214f8c585742024b44ba51e2d3ae983544f242..8db1695dfdb7c1233ddacfb1fc4ca473fd8aa31c 100644
--- a/src/main/resources/languages/base_de.properties
+++ b/src/main/resources/languages/base_de.properties
@@ -422,7 +422,7 @@ home.menu.templates=Vorlagen helfen dir dabei neue Buchung schnell und effizient
 home.menu.templates.action.manage=Vorlagenverwaltung
 
 home.menu.charts=Visualisiere deine Daten in verschiedenen Diagrammen. Nutze die mitgelieferten Diagrammtypen oder definiere deine eigenen Diagramme.
-home.menu.charts.action.manage=Eigene Diagramme verwalten
+home.menu.charts.action.manage=Diagrammverwaltung
 home.menu.charts.action.show=Diagramme ansehen
 
 home.menu.reports=Erstelle konfigurierbare Monatsberichte als PDF zum Ausdrucken und Archivieren. Du kannst den Inhalt der Berichte filtern und zum Beispiel nach Einnahmen und Ausgaben getrennt auflisten lassen.
@@ -553,6 +553,9 @@ chart.quick.last.month.days=Letzte 30 Tage
 chart.quick.last.year.days=Letzte 365 Tage
 chart.quick.until.today=Alle bis heute
 
+chart.button.manage=Eigene Diagramme verwalten
+chart.button.settings=Diagramm ändern
+
 statistics.number.of.accounts={0} Konten
 statistics.number.of.transactions={0} Buchungen
 statistics.number.of.templates={0} Vorlagen
diff --git a/src/main/resources/languages/base_en.properties b/src/main/resources/languages/base_en.properties
index 5cdb728fb4d9334712ed42aee03e58b446b4fb37..39fe482b3f9ae0906164c812c2d6c7aacd5fe3ad 100644
--- a/src/main/resources/languages/base_en.properties
+++ b/src/main/resources/languages/base_en.properties
@@ -423,7 +423,7 @@ home.menu.templates=Templates help you to create new transactions quickly and ef
 home.menu.templates.action.manage=Manage templates
 
 home.menu.charts=Visualize your data by using charts. You can choose an included default chart or define your own.
-home.menu.charts.action.manage=Manage custom charts
+home.menu.charts.action.manage=Manage charts
 home.menu.charts.action.show=Show charts
 
 home.menu.reports=Create configurable month reports in PDF format for printing and archiving. You can filter the content of the reports and, for example, list them separately to incomes and expenditures.
@@ -552,6 +552,9 @@ chart.quick.last.month.days=Last 30 days
 chart.quick.last.year.days=Last 365 days
 chart.quick.until.today=Until today
 
+chart.button.manage=Manage custo charts
+chart.button.settings=Change chart
+
 statistics.number.of.accounts={0} Accounts
 statistics.number.of.transactions={0} Transactions
 statistics.number.of.templates={0} Templates
diff --git a/src/main/resources/static/js/charts.js b/src/main/resources/static/js/charts.js
index 760b548b412e5f368730b1c550a79d64dbd18da2..20483408ceb268dda8da2e663f3f5a7e61708a10 100644
--- a/src/main/resources/static/js/charts.js
+++ b/src/main/resources/static/js/charts.js
@@ -114,7 +114,15 @@ $(document).ready(function()
         applyFilter();
     });
 
+    $('#buttonShowChartSettings').click(function(){
+        document.getElementsByName('NewChartSettings')[0].classList.toggle('hidden', false);
+        document.getElementById('buttonShowChartSettings').classList.toggle('hidden', true);
+    });
+
     filterChartPreviews();
+
+    let showEditSettingsButton = document.getElementsByName('NewChartSettings')[0].classList.contains('hidden');
+    document.getElementById('buttonShowChartSettings').classList.toggle('hidden', !showEditSettingsButton);
 });
 
 function createDatePickerEnd(minDate, selectedDate)
diff --git a/src/main/resources/templates/charts/charts.ftl b/src/main/resources/templates/charts/charts.ftl
index d9d0951eb1dcb23a559e15a1da342bd425f96d27..299348bafb0ab34c20fe86b3c345c4a6b0543acd 100644
--- a/src/main/resources/templates/charts/charts.ftl
+++ b/src/main/resources/templates/charts/charts.ftl
@@ -27,11 +27,17 @@
                 <@header.content>
                     <br>
 
-                    <form name="NewChartSettings" action="<@s.url '/charts'/>" method="post">
+                    <div class="row">
+                        <div class="col s12 center-align">
+                            <@header.buttonLink url='' icon='edit' localizationKey='chart.button.settings' noUrl=true id='buttonShowChartSettings' classes='hidden'/>
+                        </div>
+                    </div>
+
+                    <form name="NewChartSettings" action="<@s.url '/charts'/>" method="post" class="<#if chartSettings.isChartSelected()>hidden</#if>">
                         <input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
 
                         <div class="container">
-                            <div class="row hide-on-small-and-down">
+                            <div class="row">
                                 <div class="col s12 center-align">
                                     <#list displayTypes as displayType>
                                         <@chartTypeButton item=displayType buttonClass="button-display-type" initialItem=chartSettings.getDisplayType()/>
@@ -42,7 +48,7 @@
                         <input type="hidden" name="displayType" value="${chartSettings.getDisplayType().name()}">
 
                         <div class="container">
-                            <div class="row hide-on-small-and-down">
+                            <div class="row">
                                 <div class="col s12 center-align">
                                     <#list groupTypes as groupType>
                                         <@chartTypeButton item=groupType buttonClass="button-group-type" initialItem=chartSettings.getGroupType()/>
@@ -58,7 +64,7 @@
                                     <@chartPreview chart/>
                                 </#list>
                                 <div class="col s12 center-align hidden" id="buttonCustomCharts">
-                                    <@header.buttonLink url='/charts/manage' icon='edit' localizationKey='home.menu.charts.action.manage'/>
+                                    <@header.buttonLink url='/charts/manage' icon='edit' localizationKey='chart.button.manage'/>
                                 </div>
                             </div>
                         </div>
@@ -78,6 +84,8 @@
                         </div>
                     </form>
 
+                    <br>
+
                     <div class="container-chart">
                         <#if containerID??>
                             <div id="${containerID}" class="chart-canvas"></div>