Squashed 'third_party/matplotlib-cpp/' changes from f994996e0..7d0e69540

7d0e69540 include ldflags instead of libs
b79ca6dc6 feat: Add keyword argument support to legend()
374dcd032 Added arrow, cla, margins, contour
107912124 a few of the parameters are floats. This is a quick hack to get a couple of them to work. In the future matplotlibcpp should use map<string,any> instead of map<string,string> for kwargs. That should be a separate PR
480af0f4f Added support for axvspan
60dcd64c8 Sprinkle calls to interpreter::get() all over the codebase
d612b524e Fix python3.8 segfault for the named_* family of functions
f5f8ce3d6 Move Python.h include into first position
bf2be7108 Update python-config invocation in Makefile
ecf3a8dd0 Add native numpy handling when plotting vectors of (unsigned) long long
d74105036 Fix use-after-free bug when plotting unknown numeric types
edb407461 Reword libpython dependency; move vcpkg section
1243814da Add vcpkg installation instructions
9595628a8 Replace occurrences of std::unordered_map<> with std::map<>
823de00fb :wrench: Moved all elements related to docker build in contrib
a7c38ad72 :pencil: Typo update in Readme.md
fa673c670 :sparkle: Added a first CI file
7ef255923 :sparkle: Added a target to build docker image
d7839cc47 :sparkle: Added a first version of Dockerfile
e5ffc6ce8 ensure interpreter is initialized for suptitle & subplot
2843ebbe6 delete unnecessary "inline" on get_array(vector<string>)
ea527fdce add "inline" to get_array, color_bar, axvline
7f7b8528b Fix numpy detection and provide some functions even when numpy is not available
41477fcdb Add experimental documentation target
811ebfb2c Add 3D line plot and zlabel function.
9b23ca06b Adds vim tempfiles to gitignore
52816e2f8 Adds boxplot, get_strarray and get_listlist
1809d7a26 Adds axvline to function scope
d283d47d0 Remove indentation around 'imshow()' functions
de33a5745 Rename make variable CXXFLAGS -> EXTRA_FLAGS
f1af639c4 implement colorbar; requires returned PyObject of mappable object
f23347fca Added information about backend renderer issue on MacOS
7219c6187 Updated wording in README.
61da78fbb Updated cmake readme section.
d68740570 Added #include "unordered_map" to main header
8297ae81a Implemented wrapper corresponding to tick_params in matplotlib
6fb6a9156 Fix multiple definition of subplot2grid
97729fd2c Add possibility to pass additional parameters to scatter (like color or label)
5adfbe031 Rearrange Makefile.
1ac91f759 subplot2grid implementation and example
6ec72daa6 Fix: Allow for building examples individually You don't necessarily want to build all of them. Now you can do, e.g.:     make examples/minimal
1c2a51f50 Add .gitignore file for example binaries
dbe8e4c63 Makefile: Better numpy handling and make building more generic Changes: * Use system version of python by default (overridable with PYTHON_BIN) * Find where numpy headers live on system * Remove boilerplate from Makefile and just build all examples/*.cpp files with appropriate flags
d3137c53b Fix for imshow multiple definition error #48
f4ad842e7 Implements bar slightly more closely to matplotlib
7fa134ea1 Fixes compiler warnings
277221701 Fix for OpenCV 4 In the latest version of OpenCV, several constants were removed in favour of enum classes. Fix by #define'ing the ones we need.
5dd719498 Add support for plot(y,keywords)
bc7e4576b Added basic example for imshow.
20e090ef9 Add support for imshow()
019cd237a check functions with narrower error message scope
4ace1ad94 fix the figsize segfault bug
94c0215d6 Fixed type in update example.
c48ed308d Reduced example for dynamic plot class.
07a73fad2 Add dynamic plot class
8babc98e0 Add kwargs for title, xlabel, ylabel
f64f1f658 Added missing <array> header
d184e1467 Add cumulative parameter to hist()
05087cf86 Additional debug output if python module loading fails
d42a969cc Add portability #defines PyLong_FromLong, PyUnicode_FromString
d89878b95 Add fill plot with example
0e39f8f56 Load mplot3d module lazily.
eae3824b0 Add picture and cpp file for new surface example.
69e58fe25 Add plot_surface
65933e3d4 Officially require C++11.
c19e00ca4 Add -std=c++11 for basic in Makefile
94f6c0102 Add bar plot and subplots_adjust
8baa5821c Add missing Py_DECREF in scatter function.
78719eb5f added support for scatter plots
073dd98f6 Add fignum_exists() function
c92ad4cd1 Optionally pass figure number to figure() as argument
dcb23221b Return figure number from figure function
b1242079b Add support for ginput() function
e49f4f7cc Chose a better name for the parameter to text
41a46e5d0 Fixed whitespace
b60d3384a Added text and suptitle
3d555d226 Add missing Py_DECREF to quiver()
00a4766f7 Fix indentation in basic example,
079194581 Update README and Makefile for quiver plot example.
c1ad253e7 Add example of quiver plot
697054cab Add quiver function for 4 vectors of uniform length
16a7fd66c Fix implementation of errorbar() At the moment, the errorbar() function takes an optional parameter s, which is presumably supposed to correspond to the same parameter for e.g. the plot function. The only problem is that a) this argument is unused in the function and b) matplotlib's errorbar() doesn't take a parameter like this anyway.
6e3fcf65c Update windows/VS2017 support
331029fd1 Add support for xticks and yticks
717e98e75 Add figure_size
1d23b2883 added example for fill_inbetween.cpp
b74e465ba fix a small typo, no content changes

git-subtree-dir: third_party/matplotlib-cpp
git-subtree-split: 7d0e695409e7029fd52a4653907a167b4cc725b9
diff --git a/examples/subplot.cpp b/examples/subplot.cpp
new file mode 100644
index 0000000..bee322e
--- /dev/null
+++ b/examples/subplot.cpp
@@ -0,0 +1,31 @@
+#define _USE_MATH_DEFINES
+#include <cmath>
+#include "../matplotlibcpp.h"
+
+using namespace std;
+namespace plt = matplotlibcpp;
+
+int main() 
+{
+    // Prepare data
+	int n = 500;
+	std::vector<double> x(n), y(n), z(n), w(n,2);
+	for(int i=0; i<n; ++i) {
+		x.at(i) = i;
+		y.at(i) = sin(2*M_PI*i/360.0);
+		z.at(i) = 100.0 / i;
+	}
+
+    // Set the "super title"
+    plt::suptitle("My plot");
+    plt::subplot(1, 2, 1);
+	plt::plot(x, y, "r-");
+    plt::subplot(1, 2, 2);
+    plt::plot(x, z, "k-");
+    // Add some text to the plot
+    plt::text(100, 90, "Hello!");
+
+
+	// Show plots
+	plt::show();
+}