Wednesday, August 04, 2021
Set custom debugger for python
You can set PYTHONBREAKPOINT to set behaviour of breakpoint function. For example ipdb.set_trace.
More Info
Thursday, July 22, 2021
Computational Complexity
Even that the speed of a program is fast enough production it may not be fasy enough for experimentation. Because, you may need to many trials before settling the final configuration.
Friday, July 09, 2021
Blogger Phone App
Even that web interfaces are universal, still dedicated phone app from blogger makes it easy to post from phone.
Wednesday, July 07, 2021
x.99
We see x.99 prices everywhere. It is hacking human perception. Everybody does it does not mean that it is fair. I got an idea to develop a chrome extension that shows prices with x.99 by adding 1 cent on it.
Saturday, June 19, 2021
C vs C++
Supposedly compatible to languages create problems in some cases. Recently I have faced cmath and stdlib do not work with each other. The compiler creates all sorts of strange errors.
Tuesday, June 01, 2021
Atan Sozler
Paslayan demir is tutmaz
Katlari diken, gulmeyi sever
Demleye demleye gel, olur
Balik yiyen bastan asagi kokar
Her et kusbasi yenmez
Yorgunsan yere ayagini uzat
Kupun darsa, sirke satma
Sakla zamani, kiymetli her ani
Katlari diken, gulmeyi sever
Demleye demleye gel, olur
Balik yiyen bastan asagi kokar
Her et kusbasi yenmez
Yorgunsan yere ayagini uzat
Kupun darsa, sirke satma
Sakla zamani, kiymetli her ani
Friday, May 21, 2021
Git recover lost rebase
1. git reflog
First identify the lost commit
2. git diff master commithash --name-only
Check the differences in the files
3. git checkout commithash filepath
Pick the one that you need
Sunday, May 09, 2021
Get Json of Django Object
I found unnecessarily difficult to get json from django model object. Here is my simple solution to get that done.
def get_json_object(obj, fields): return {f:obj.__dict__[f] for f in fields}
Friday, May 07, 2021
Thursday, April 08, 2021
No Real Style Transfer
Neural Networks are used to produce style transfer. But discrete structures are more difficult to generate. Here is my example. Does it resemble any picture to you?
Monday, February 15, 2021
Django + NGINX + USWGI
I was using "app" in the config, that was the reason why it did not work. Now converting to "application" it works.
module=mysite.wsgi:application
Sunday, January 31, 2021
Monday, January 11, 2021
Sunday, December 13, 2020
CPPNs
Most of the time learning already known things is not a good idea in machine learning. Cppns are nice exceptions. Treat raster image as data and map coordinates to pixel values. The result is interesting, vector approximation of raster image. Better yet, multi layer function have potential to be more compact than pure vector lines.
Saturday, December 12, 2020
Testing 3rd party api
Keeping the trials in a test suite for 3rd party api ensures consistency in later stages.
a good suggedtion from book Clean Code
Thursday, December 10, 2020
DRY Principle
I like the DRY (Do not repeat yourself) principle. In my words, do not copy-paste your code; use functions, modules, etc. to avoid that. This will reduce the point of maintenance.
Wikipedia
Wednesday, November 25, 2020
Text to Speech in Browser
It would be a nice welcome, however I couldn't bypass user interaction requirement.
var msg = new SpeechSynthesisUtterance('Hi, Welcome'); window.speechSynthesis.speak(msg);
Tuesday, November 03, 2020
Monday, October 26, 2020
Do we really need Free Moving Windows ?
After using window managers many years I began to realize that most of the time we need grid manager. Moving windows freely serves only to create a layout which some of them would be visible. This could more effectively achieved by grid managers.
https://www.w3schools.com/css/css_grid.asp
Friday, October 23, 2020
Monday, October 19, 2020
Sunday, October 11, 2020
Running Android on Kindle Paperwhite
I believe it is possible to run android on Kindle without rooting. The idea is using an emulator and a proxy service for Kindle's experimental browser.
Wednesday, September 30, 2020
Sunday, September 06, 2020
A little more freedom to kindle
I have recently stuck on being able to read android app based content on kindle. Kindle does not allow apps. Luckily app was allowing copy paste.
I have used experimental browser and created a html page to display may clipboard. This allowed me to sync between my phone and kindle.
I used "pre" tag for displaying text completely.
Thursday, August 06, 2020
Git Trick
https://stackoverflow.com/questions/9456550/how-to-find-the-n-largest-files-in-a-git-repository
Friday, February 07, 2020
Sunday, February 02, 2020
Saturday, January 25, 2020
Friday, December 07, 2018
Ignore White spaces in git
git diff --ignore-space-at-eol -b -w --ignore-blank-lines
https://coderwall.com/p/crj69a/from-a-useless-git-diff-to-a-useful-one
https://coderwall.com/p/crj69a/from-a-useless-git-diff-to-a-useful-one
Saturday, October 06, 2018
Python Counter
# collections.Counter lets you find the most common
# elements in an iterable:
>>> import collections
>>> c = collections.Counter('helloworld')
>>> c
Counter({'l': 3, 'o': 2, 'e': 1, 'd': 1, 'h': 1, 'r': 1, 'w': 1})
>>> c.most_common(3)
[('l', 3), ('o', 2), ('e', 1)]
===
https://realpython.com/
Saturday, September 29, 2018
Python 3.7 debugging
Python 3.7 has internal function breakpoint(). It goes into pdb if it hits that function.
https://www.python.org/dev/peps/pep-0553/
I just forgot to transpose
julia> x*x
ERROR: MethodError: no method matching *(::Array{Int64,1}, ::Array{Int64,1})
Closest candidates are:
*(::Any, ::Any, ::Any, ::Any...) at operators.jl:502
*(::LinearAlgebra.Adjoint{#s549,#s548} where #s548<:Union{DenseArray{T<:Union{Complex{Float32}, Complex{Float64}, Float32, Float64},2}, ReinterpretArray{T<:Union{Complex{Float32}, Complex{Float64}, Float32, Float64},2,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray}, ReshapedArray{T<:Union{Complex{Float32}, Complex{Float64}, Float32, Float64},2,A,MI} where MI<:Tuple{Vararg{SignedMultiplicativeInverse{Int64},N} where N} where A<:Union{ReinterpretArray{T,N,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray}, SubArray{T<:Union{Complex{Float32}, Complex{Float64}, Float32, Float64},2,A,I,L} where L where I<:Tuple{Vararg{Union{Int64, AbstractRange{Int64}, AbstractCartesianIndex},N} where N} where A<:Union{ReinterpretArray{T,N,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, ReshapedArray{T,N,A,MI} where MI<:Tuple{Vararg{SignedMultiplicativeInverse{Int64},N} where N} where A<:Union{ReinterpretArray{T,N,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray}where N where T, DenseArray}} where #s549, ::Union{DenseArray{S,1}, ReinterpretArray{S,1,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray}, ReshapedArray{S,1,A,MI} where MI<:Tuple{Vararg{SignedMultiplicativeInverse{Int64},N} where N} where A<:Union{ReinterpretArray{T,N,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray}, SubArray{S,1,A,I,L} where L where I<:Tuple{Vararg{Union{Int64, AbstractRange{Int64}, AbstractCartesianIndex},N} where N} where A<:Union{ReinterpretArray{T,N,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, ReshapedArray{T,N,A,MI} where MI<:Tuple{Vararg{SignedMultiplicativeInverse{Int64},N} where N} where A<:Union{ReinterpretArray{T,N,S,A} where S where A<:Union{SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, SubArray{T,N,A,I,true} where I<:Tuple{AbstractUnitRange,Vararg{Any,N} where N} where A<:DenseArray where N where T, DenseArray} where N where T, DenseArray}}) where {T<:Union{Complex{Float32}, Complex{Float64}, Float32, Float64}, S} at C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.0\LinearAlgebra\src\matmul.jl:97 *(::LinearAlgebra.Adjoint{#s549,#s548} where #s548<:LinearAlgebra.AbstractTriangular where #s549, ::AbstractArray{T,1} where T) at C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.0\LinearAlgebra\src\triangular.jl:1805 ...Stacktrace: [1] top-level scope at none:0
julia> x*x'3×3 Array{Int64,2}: 1 2 3 2 4 6
3 6 9
Wednesday, September 26, 2018
Monday, August 13, 2018
Complete Front End Deep Learning
Tensorflow publishes a front-end library that supports GPU training.
https://js.tensorflow.org/
Thursday, February 09, 2017
Metadata kept in Windows cache, refused to mount
I think this is related to hibernation. I have found the solution
sudo ntfsfix /dev/sda(#)
Thursday, February 02, 2017
Symmetric Dirichlet in d dimensions
function res=dirchrnd(alpha,d)
res = zeros(d,1);
for i=1:d
res(i)=gamrnd(alpha,1);
end
res=res/sum(res);
end
res = zeros(d,1);
for i=1:d
res(i)=gamrnd(alpha,1);
end
res=res/sum(res);
end
Friday, January 27, 2017
Tuesday, January 24, 2017
Thursday, September 15, 2016
Juno Atom Julia v0.5
I received this error after updating Atom packages of Julia
"unknown package Juno required by Atom"
I attempt to solve using
Pkg.clone("https://github.com/JunoLab/Juno.jl.git")
Pkg.update()
using Atom
However, in next step Gallium gave an error.
I removed package Gallium and added again.
Then with existing installation of Atom, Julia works after precompilation finishes.
"unknown package Juno required by Atom"
I attempt to solve using
Pkg.clone("https://github.com/JunoLab/Juno.jl.git")
Pkg.update()
using Atom
However, in next step Gallium gave an error.
I removed package Gallium and added again.
Then with existing installation of Atom, Julia works after precompilation finishes.
Tuesday, September 06, 2016
Tuesday, August 30, 2016
Using Global Namespace functions
If you would like to use the global function while defining function with same name use this way :
Vector Vector::exp()
{
Vector& r = buffer.get();
for (int i = 0; i r.data[i] = ::exp(data[i]);
return buffer.next();
}
Vector Vector::exp()
{
Vector& r = buffer.get();
for (int i = 0; i
return buffer.next();
}
Monday, August 29, 2016
Thursday, April 21, 2016
Tuesday, March 08, 2016
Tuesday, March 01, 2016
Configuring Matlab MEX for VS15
XML files located in matlabroot '\bin\win64\mexopts'
Compiler options also stored on those XML files
http://kaba.hilvi.org/homepage/blog/vs2015_in_matlab_2015/vs_2015_in_matlab_2015.htm
Compiler options also stored on those XML files
http://kaba.hilvi.org/homepage/blog/vs2015_in_matlab_2015/vs_2015_in_matlab_2015.htm
Tuesday, January 12, 2016
Friday, December 18, 2015
Twitter Rate Limits
Twitter allows to capture 3200 tweets in the timeline.
A java program bypasses this limit using search system
https://github.com/Jefferson-Henrique/GetOldTweets
A java program bypasses this limit using search system
https://github.com/Jefferson-Henrique/GetOldTweets
Friday, November 20, 2015
Tuesday, November 03, 2015
Selecting Specific Elements in the matrix
Sometimes I would like to select elements in the Matlab matrix with their coordinate. However, if I used two arrays to get elements in Matlab it returns the rows and columns containing those elements. To get exact elements, I used following method where indx and indy is index coordinates:
A(sub2ind(size(A),indx,indy))
A(sub2ind(size(A),indx,indy))
Thursday, September 10, 2015
The Infinite Mixture of Infinite Gaussian Mixtures
http://papers.nips.cc/paper/5299-the-infinite-mixture-of-infinite-gaussian-mixtures
Tuesday, September 01, 2015
Named rows and columns
R has built-in support for naming rows and columns for matrices. Matlab has this functionality via dataset class
http://www.mathworks.com/matlabcentral/answers/83204-add-row-column-names-to-a-matrix
One can use double(X) to convert dataset back to matrix.
http://www.mathworks.com/matlabcentral/answers/83204-add-row-column-names-to-a-matrix
One can use double(X) to convert dataset back to matrix.
Sunday, August 09, 2015
Thursday, October 23, 2014
Wednesday, February 19, 2014
Creating thread with their id's
Thursday, January 23, 2014
Friday, January 17, 2014
Two small console debug tools
#define step() toc=tic;tic=GetTickCount();printf("Elapsed: %d\n",tic-toc);
#define pause() system("pause");
#define pause() system("pause");
Monday, November 04, 2013
Matlab Single Value Default Function
function default(varargin)
param = [varargin{:} ';'];
ind = find(param=='=');
stmt = 'if ~exist(''%s'',''var'');%s;end';
str = sprintf(stmt,param(1:(ind(1)-1)),[varargin{:}]);
evalin('caller', str);
end
Example use
default x=2
param = [varargin{:} ';'];
ind = find(param=='=');
stmt = 'if ~exist(''%s'',''var'');%s;end';
str = sprintf(stmt,param(1:(ind(1)-1)),[varargin{:}]);
evalin('caller', str);
end
Example use
default x=2
Tuesday, October 22, 2013
Matlab text that scales with figure size
text(0.52,0.52,'52','FontUnits','normalized','FontSize',0.11)
Wednesday, August 28, 2013
Good observation
"Just as machine learning algorithms can overfit by tuning a classifier’s parameters to the
accidental properties of a training set, a research community can overfit by refining algorithms that
have already done well on the existing data sets"
Lewis, D. D.; Yang, Y.; Rose, T.; and Li, F. RCV1: A New Benchmark Collection for Text Categorization Research. Journal of Machine Learning Research, 5:361-397, 2004. http://www.jmlr.org/papers/volume5/lewis04a/lewis04a.pdf
accidental properties of a training set, a research community can overfit by refining algorithms that
have already done well on the existing data sets"
Lewis, D. D.; Yang, Y.; Rose, T.; and Li, F. RCV1: A New Benchmark Collection for Text Categorization Research. Journal of Machine Learning Research, 5:361-397, 2004. http://www.jmlr.org/papers/volume5/lewis04a/lewis04a.pdf
Wednesday, July 31, 2013
Monday, July 22, 2013
Matlab Keyboard function
keyboard function is useful for debugging purposes. It stops execution of m file and allows user to watch and manipulate variables.
Thursday, July 18, 2013
Reset Random Number Genaration of Matlab
reset(RandStream.getDefaultStream,sum(100*clock))
http://www.mathworks.com/support/solutions/en/data/1-18WH6/
http://www.mathworks.com/support/solutions/en/data/1-18WH6/
Wednesday, July 10, 2013
Matlab Jit Acceleration
- Avoid sparse matrices
- Avoid static variables
- Vectorize the code
- Use scalar values in range of for loops
- Only call built in functions in for loops
- http://www.ee.columbia.edu/~marios/matlab/accel_matlab.pdf
Monday, July 01, 2013
Moving file to folder in HG versioning system
Just copy files into desired directory. Go into that directory and right click. Go to hg->guess renames. Rest is straightforward.
http://kiln.stackexchange.com/questions/1943/moving-a-file-in-a-repository
http://kiln.stackexchange.com/questions/1943/moving-a-file-in-a-repository
Semi Turing Test
A loosely definition for semi-Turing test is whether a human is capable to understand an output from human and output from computer aided human. For example If I am using spell checker , how someone can understand that I am doing so. It requires much more effort to distinguish.
Tuesday, June 18, 2013
Monday, April 29, 2013
Wednesday, April 17, 2013
Wednesday, April 03, 2013
Matlab Long Simulation Interactive Debug , Set Debug flag using GUI , Pause execution to debug
Create a button function:
function util_DebugGuiButtons()
global debugFlag;
uicontrol('Position',[30 10 35 40],'String','||','Callback',@wait);
uicontrol('Position',[70 10 35 40],'String','>>','Callback',@dontwait);
function wait(hObject,eventdata)
debugFlag = 1;
end
function dontwait(hObject,eventdata)
debugFlag = 0;
dbcont;
end
end
Define in top of document:
global debugFlag
Put this inside your loop :
if (debugFlag)
dbstop in file.m at line
end
Continue Button is not working as desired now. It just clears the breakpoints but does not issue dbcont command properly. I will try to figure out later.
function util_DebugGuiButtons()
global debugFlag;
uicontrol('Position',[30 10 35 40],'String','||','Callback',@wait);
uicontrol('Position',[70 10 35 40],'String','>>','Callback',@dontwait);
function wait(hObject,eventdata)
debugFlag = 1;
end
function dontwait(hObject,eventdata)
debugFlag = 0;
dbcont;
end
end
Define in top of document:
global debugFlag
Put this inside your loop :
if (debugFlag)
dbstop in file.m at line
end
Continue Button is not working as desired now. It just clears the breakpoints but does not issue dbcont command properly. I will try to figure out later.
Sunday, March 17, 2013
Comments on variables
Matlab displays comments of functions when you tend to use it. It would be good if it can show the comment of variables while holding mouse on top of variable name. This way can provide a tool to remember what each variable if for without using long descriptive variable names.
Monday, March 11, 2013
Wednesday, March 06, 2013
mouse and pencil
While being a student my life is accomodated with two items mouse and pencil.So why we are not combining them . Put a wireless mouse pen to one side and put a pencil to other side. A gyro sensor can figure out if mouse is active.
Tuesday, March 05, 2013
Robot Dish Washer
It is difficult to create robot that cleans our arbitrary dirty dishes. However , if we put some digital information on dishes (special designed for this machine) such as RFID , than robot can easily understand the shape , coordinates and features of the dish. In this way it will be easy to optimize the placement of the dishes based on current dirty dishes information.
I imagine we can create machine that has two part , first part is regular dish washer and second part is open area for dirty dishes and attached robot hands at top. It will increase the size of the machine , but it may worth , especially for big restaurants.
I imagine we can create machine that has two part , first part is regular dish washer and second part is open area for dirty dishes and attached robot hands at top. It will increase the size of the machine , but it may worth , especially for big restaurants.
Friday, February 15, 2013
LDA PCA connection
"LDA can also be seen as a type of principal component analysis for discrete data"
http://www.cs.princeton.edu/~blei/papers/Blei2012.pdf
http://www.cs.princeton.edu/~blei/papers/Blei2012.pdf
Wednesday, February 06, 2013
MATLAB pass by reference
Handles handles the pass by reference issue in MATLAB.
http://www.mathworks.com/help/matlab/matlab_prog/copying-objects.html
http://www.mathworks.com/help/matlab/matlab_prog/copying-objects.html
Sunday, February 03, 2013
Monday, January 21, 2013
Thursday, January 03, 2013
Wednesday, January 02, 2013
Display Array in NetBeans
Netbeans uses GDB:
http://stackoverflow.com/questions/1651682/how-to-watch-a-c-dynamic-array-using-gdb
http://stackoverflow.com/questions/1651682/how-to-watch-a-c-dynamic-array-using-gdb
Tuesday, January 01, 2013
Friday, December 21, 2012
Lazy Functions
I imagine compiler supported lazy functions that memorizes last value of return , then never computes it again until an input variable changes , maybe keeps states of input vars. This may help to reduce computation , when reads are more frequent than writes . A flag could be set if there is any write to specified vars
Thursday, December 20, 2012
Thursday, December 13, 2012
Saturday, November 24, 2012
R normalize data into 0-1 Interval
function normalize(data)
{
maxvalues = apply(data,2,max)
minvalues = apply(data,2,min)
sweep(data,2,minvalues,"-")
sweep(data,2,maxvalues-minvalues,"/")
}
Monday, November 05, 2012
R hold plot
There is no hold function R instead lines or points are used for that purpose :
plot(method1,type="l", main="Accuracy vs Number of Training samples",
xlab="Number of samples", ylab="Accuracy",
xlim=c(0, 30), ylim=c(0, 1))
lines(method2,col="blue")
plot(method1,type="l", main="Accuracy vs Number of Training samples",
xlab="Number of samples", ylab="Accuracy",
xlim=c(0, 30), ylim=c(0, 1))
lines(method2,col="blue")
Friday, November 02, 2012
Thursday, November 01, 2012
Wednesday, October 24, 2012
Possible Extensions for State of the Art Machine Learning Methods
-Relax the assumptions
-Put in a hierarchy
-Semi,hybrid version
-Active,online version
-Better performance
-Relation with other methods
-More efficient
-A more general version
-Application on more realistic problem or different domain
-Put in a hierarchy
-Semi,hybrid version
-Active,online version
-Better performance
-Relation with other methods
-More efficient
-A more general version
-Application on more realistic problem or different domain
Monday, October 22, 2012
Evalution metrics using Javascript
function getEvaluationMetrics(tp,fp,tn,fn){
precision=(tp/(tp+fp));
recall=(tp/(tp+fn));
f1=2*(precision*recall/(precision+recall));
var m= new Array(3); m[0]=precision; m[1]=recall; m[2]=f1;
return m;
}
precision=(tp/(tp+fp));
recall=(tp/(tp+fn));
f1=2*(precision*recall/(precision+recall));
var m= new Array(3); m[0]=precision; m[1]=recall; m[2]=f1;
return m;
}
Monday, October 15, 2012
Paradox
nothing is exactly true -> Altough we observe many things that is not perfect , this hypothesis could not be true for any hypothesis set.
Friday, October 12, 2012
Thursday, October 11, 2012
R/Matlab Anonymous functions
R for variable X:
means <- function(x) rnorm(1,x)
Matlab
means = @(x) x+randn(1)
means <- function(x) rnorm(1,x)
Matlab
means = @(x) x+randn(1)
Stationary distribution , probability flow analogy
In page rank we are multiplying Transpose Adjacency matrix with current page rank vector. If the result is stationary distribution it means it will converge and all values will stay same. We can think this as incoming probability to a node is equal to outgoing probability.
For detailed balance condition T(x'->x)P(x') = T(x->x')P(x) if the graph is undirected
So total flow of x' times fraction of flow to x T(x'->x) is equal to total flow of x times the fraction of flow from x to x' is equal means incoming and outgoing probability flow in the full duplex edge.
It is possible that, this concept is already originating from real physical phenomena such as fluid flow or air flow.
For detailed balance condition T(x'->x)P(x') = T(x->x')P(x) if the graph is undirected
So total flow of x' times fraction of flow to x T(x'->x) is equal to total flow of x times the fraction of flow from x to x' is equal means incoming and outgoing probability flow in the full duplex edge.
It is possible that, this concept is already originating from real physical phenomena such as fluid flow or air flow.
Friday, October 05, 2012
Bayesian F1
Decision theory considers the posterior probability to decide which class to chose , or weight using a cost function. However in this setting its objective is the accuracy. Most often we are more interested in more balanced measures such as F1 due to skewed classes. How would be F1 maximizer Bayesian decision mechanism if the distribution is exactly known ? I guess this is already implemented in somewhere , however I didn't face it yet.
Thursday, October 04, 2012
Latex 2 column figure
\begin{figure*}[ht]
\vskip 0.2in
\begin{center}
\centerline{\includegraphics[width=2\columnwidth]{NAME}}
\caption{NAME}
\end{center}
\vskip -0.2in
\end{figure*}
Subscribe to:
Posts (Atom)
Turkce tekerlemeler 13
baba bu bambu mu, baba bu mu bambu
-
It is difficult to create robot that cleans our arbitrary dirty dishes. However , if we put some digital information on dishes (special des...
-
Layoffs from cloud companies Amazon, Google and Microsoft is fade of Web2. But Metaverse is failed attempt to create Web3 so far. My perspec...
-
Real Time Transcription: In TV channels I realize that text is a little bit coming late after the speech. So , I think they are using...