예제 #1
0
        public void GenerateAllFigures(int width, int height, string outputFolderName = "images")
        {
            Console.WriteLine("Generating all figures...");
            CleanOutputFolder(outputFolderName);
            var recipies = new Recipes(outputFolderName, figureWidth, figureHeight);

            List <string> hashes = new List <string>();

            hashes.Add(recipies.Figure_01a_Scatter_Sin());
            hashes.Add(recipies.Figure_01b_Automatic_Margins());
            hashes.Add(recipies.Figure_01c_Defined_Axis_Limits());
            hashes.Add(recipies.Figure_01d_Zoom_and_Pan());
            hashes.Add(recipies.Figure_01e_Legend());
            hashes.Add(recipies.Figure_01f_Custom_Marker_Shapes());
            hashes.Add(recipies.Figure_01g_All_Marker_Shapes());
            hashes.Add(recipies.Figure_02_Styling_Scatter_Plots());
            hashes.Add(recipies.Figure_03_Plot_XY_Data());
            hashes.Add(recipies.Figure_04_Plot_Lines_Only());
            hashes.Add(recipies.Figure_05_Plot_Points_Only());
            hashes.Add(recipies.Figure_06_Styling_XY_Plots());
            hashes.Add(recipies.Figure_06b_Custom_LineStyles());
            hashes.Add(recipies.Figure_07_Plotting_Points());
            hashes.Add(recipies.Figure_08_Plotting_Text());
            hashes.Add(recipies.Figure_09_Clearing_Plots());
            hashes.Add(recipies.Figure_10_Modifying_Plotted_Data());
            hashes.Add(recipies.Figure_11_Modify_Styles_After_Plotting());
            hashes.Add(recipies.Figure_12_Date_Axis());

            hashes.Add(recipies.Figure_20_Small_Plot());
            hashes.Add(recipies.Figure_21a_Title_and_Axis_Labels());
            hashes.Add(recipies.Figure_21b_Extra_Padding());
            hashes.Add(recipies.Figure_22_Custom_Colors());
            hashes.Add(recipies.Figure_23_Frameless_Plot());
            hashes.Add(recipies.Figure_24_Disable_the_Grid());
            hashes.Add(recipies.Figure_25_Corner_Axis_Frame());
            hashes.Add(recipies.Figure_26_Horizontal_Ticks_Only());
            hashes.Add(recipies.Figure_27_Very_Large_Numbers());
            hashes.Add(recipies.Figure_28_Axis_Exponent_And_Offset());
            hashes.Add(recipies.Figure_28b_Multiplier_Notation_Default());
            hashes.Add(recipies.Figure_28c_Multiplier_Notation_Disabled());
            hashes.Add(recipies.Figure_29_Very_Large_Images());

            hashes.Add(recipies.Figure_30a_Signal());
            //hashes.Add(recipies.Figure_30b_Signal_With_Parallel_Processing());
            hashes.Add(recipies.Figure_30c_SignalConst());
            //hashes.Add(recipies.Figure_30d_SignalConst_One_Billion_Points()); // SLOW!
            hashes.Add(recipies.Figure_32_Signal_Styling());

            hashes.Add(recipies.Figure_40_Vertical_and_Horizontal_Lines());
            hashes.Add(recipies.Figure_41_Axis_Spans());

            hashes.Add(recipies.Figure_50_StyleBlue1());
            hashes.Add(recipies.Figure_51_StyleBlue2());
            hashes.Add(recipies.Figure_52_StyleBlue3());
            hashes.Add(recipies.Figure_53_StyleLight1());
            hashes.Add(recipies.Figure_54_StyleLight2());
            hashes.Add(recipies.Figure_55_StyleGray1());
            hashes.Add(recipies.Figure_56_StyleGray2());
            hashes.Add(recipies.Figure_57_StyleBlack());
            hashes.Add(recipies.Figure_58_StyleDefault());
            hashes.Add(recipies.Figure_59_StyleControl());

            hashes.Add(recipies.Figure_60_Plotting_With_Errorbars());
            hashes.Add(recipies.Figure_61_Plot_Bar_Data());
            hashes.Add(recipies.Figure_62_Plot_Bar_Data_Fancy());
            hashes.Add(recipies.Figure_63_Step_Plot());
            hashes.Add(recipies.Figure_64_Manual_Grid_Spacing());
            hashes.Add(recipies.Figure_65_Histogram());
            hashes.Add(recipies.Figure_66_CPH());
            hashes.Add(recipies.Figure_67_Candlestick());
            hashes.Add(recipies.Figure_68_OHLC());

            hashes.Add(recipies.Figure_70_Save_Scatter_Data());
            hashes.Add(recipies.Figure_71_Save_Signal_Data());
            hashes.Add(recipies.Figure_72_Custom_Fonts());

            ValidateImageHashes(hashes.ToArray());

            GenerateReport(outputFolderName);

            Console.WriteLine("\nCOOKBOOK GENERATION COMPLETE");
            Console.WriteLine("\nOptionally update the cookbook with:");
            string cookBookCopierPath = System.IO.Path.GetFullPath("../../");

            Console.WriteLine($"cd \"{cookBookCopierPath}\" & python UPDATE_COOKBOOK.py");
            Console.WriteLine();
        }
예제 #2
0
        public void GenerateAllFigures(int width, int height, string outputFolderName = "images")
        {
            Console.WriteLine("Generating all figures...");
            CleanOutputFolder(outputFolderName);
            var recipies = new Recipes(outputFolderName, figureWidth, figureHeight);

            List <string> hashes = new List <string>();

            hashes.Add(recipies.Figure_01a_Scatter_Sin());
            hashes.Add(recipies.Figure_01b_Automatic_Margins());
            hashes.Add(recipies.Figure_01c_Defined_Axis_Limits());
            hashes.Add(recipies.Figure_01d_Zoom_and_Pan());
            hashes.Add(recipies.Figure_01e_Legend());
            hashes.Add(recipies.Figure_02_Styling_Scatter_Plots());
            hashes.Add(recipies.Figure_03_Plot_XY_Data());
            hashes.Add(recipies.Figure_04_Plot_Lines_Only());
            hashes.Add(recipies.Figure_05_Plot_Points_Only());
            hashes.Add(recipies.Figure_06_Styling_XY_Plots());
            hashes.Add(recipies.Figure_07_Plotting_Points());
            hashes.Add(recipies.Figure_08_Plotting_Text());
            hashes.Add(recipies.Figure_09_Clearing_Plots());
            hashes.Add(recipies.Figure_10_Modifying_Plotted_Data());

            hashes.Add(recipies.Figure_20_Small_Plot());
            hashes.Add(recipies.Figure_21a_Title_and_Axis_Labels());
            hashes.Add(recipies.Figure_21b_Extra_Padding());
            hashes.Add(recipies.Figure_22_Custom_Colors());
            hashes.Add(recipies.Figure_23_Frameless_Plot());
            hashes.Add(recipies.Figure_24_Disable_the_Grid());
            hashes.Add(recipies.Figure_25_Corner_Axis_Frame());
            hashes.Add(recipies.Figure_26_Horizontal_Ticks_Only());

            hashes.Add(recipies.Figure_30_Signal());
            hashes.Add(recipies.Figure_31_Signal_With_Antialiasing_Off());
            hashes.Add(recipies.Figure_32_Signal_Styling());

            hashes.Add(recipies.Figure_40_Vertical_and_Horizontal_Lines());

            hashes.Add(recipies.Figure_50_StyleBlue1());
            hashes.Add(recipies.Figure_51_StyleBlue2());
            hashes.Add(recipies.Figure_52_StyleBlue3());
            hashes.Add(recipies.Figure_53_StyleLight1());
            hashes.Add(recipies.Figure_54_StyleLight2());
            hashes.Add(recipies.Figure_55_StyleGray1());
            hashes.Add(recipies.Figure_56_StyleGray2());
            hashes.Add(recipies.Figure_57_StyleBlack());
            hashes.Add(recipies.Figure_58_StyleDefault());
            hashes.Add(recipies.Figure_59_StyleControl());

            hashes.Add(recipies.Figure_60_Plotting_With_Errorbars());
            hashes.Add(recipies.Figure_61_Plot_Bar_Data());
            hashes.Add(recipies.Figure_62_Plot_Bar_Data_Fancy());
            hashes.Add(recipies.Figure_63_Step_Plot());
            hashes.Add(recipies.Figure_64_Manual_Grid_Spacing());
            hashes.Add(recipies.Figure_65_Histogram());
            hashes.Add(recipies.Figure_66_CPH());

            ValidateImageHashes(hashes.ToArray());

            Console.WriteLine("\nCOOKBOOK GENERATION COMPLETE");
            Console.WriteLine("\nOptionally update the cookbook with:");
            string cookBookCopierPath = System.IO.Path.GetFullPath("../../");

            Console.WriteLine($"cd \"{cookBookCopierPath}\" & \"COPY-COOKBOOK.bat\"");
            Console.WriteLine();
        }